在书上看到的node.Next和node->Next表达的效果是一样的,可咋写代码的时候会出错呢//Define_Nodestruct Yo_Node{Student_Record record;struct Yo_Node *Next;};//Initialize Nodevoid Initial_Node(Yo_Node *node){//Init_Record(node.reco
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/24 11:37:19
在书上看到的node.Next和node->Next表达的效果是一样的,可咋写代码的时候会出错呢//Define_Nodestruct Yo_Node{Student_Record record;struct Yo_Node *Next;};//Initialize Nodevoid Initial_Node(Yo_Node *node){//Init_Record(node.reco
在书上看到的node.Next和node->Next表达的效果是一样的,可咋写代码的时候会出错呢
//Define_Node
struct Yo_Node
{
Student_Record record;
struct Yo_Node *Next;
};
//Initialize Node
void Initial_Node(Yo_Node *node)
{
//Init_Record(node.record);
node->Next =NULL;/*node.Next=NULL会出错,不明白为什么*/
}
那如果将void Initial_Node(Yo_Node *node)改为void Initial_Node(Yo_Node &node)是不就可以了
在书上看到的node.Next和node->Next表达的效果是一样的,可咋写代码的时候会出错呢//Define_Nodestruct Yo_Node{Student_Record record;struct Yo_Node *Next;};//Initialize Nodevoid Initial_Node(Yo_Node *node){//Init_Record(node.reco
因为node是一个Yo_Node 类型的指针,指向的是一个Yo_Node对象,指针只能用指向操作符而不能用 “.”操作符;如果node是一个Yo_Node对象,那么就只能写作node.Next=NULL;,而不能写作弄得->Next=NULL; 也就是说‘->’用于指针,‘.’用于对象.