关于建立链表时结构体的一些有关问题
关于建立链表时结构体的一些问题
typedef struct ElemType{
float coef;
int expn;
}ElemType;
typedef struct LNode{
ElemType data;
struct LNode *next;
}*LinkList;
自己的理解:例如:LNode List; LinKList L; L=&List;
那么L为指向List的指针。
问题:1.我的理解的对错
2.L内的成员data用于存储变量的值还是变量的地址
3.若把某一地址赋给List内的成员next,那用L如何表示
------解决思路----------------------
1.对的
2.前者
3.LNode temp; L->next = &temp;
------解决思路----------------------
q是一个指向结构体的指针,如果对q进行了解引用,*q就是该指针所指向的结构体的对象,如果需要使用成员的话,请使用点操作符。所以应该是q->data, (*q).data这样使用结构中的成员。
------解决思路----------------------
typedef struct LNode{
ElemType data;
struct LNode *next;
}*LinkList;
这句typedef已经将LinkList变为LNode*的别名了,所以你上面在定义p的时候直接LinkList p就行了,在加个*就是二级指针了。
------解决思路----------------------
L是个结构体变量,所以L.tail tail是个指向结构体的指针,所以tail->data, data也是个结构体变量,所以data.coef。所以就是L.tail->data.coef谭老师的书看完之后可以看下c primer plus期间可以看下郝斌的C语言的视频教程。之后看看c和指针和c陷阱与缺陷。我也是去年才开始学编程的,这也是我自己的学习路线。之后准备学啥就看你自己的喜好了,我之后又去学了c++,前段时间才看完c++primer,准备再看一遍。还有传智播客的网上有很多免费的视频,感觉讲的挺好的,有功夫可以去看看有什么自己想看的视频。谭老师的书看一遍就够,反正就是个领你上个道儿,后续的书籍也可以参考论坛里很多大神们推荐的书籍,看个2,3遍肯定是要的。
typedef struct ElemType{
float coef;
int expn;
}ElemType;
typedef struct LNode{
ElemType data;
struct LNode *next;
}*LinkList;
自己的理解:例如:LNode List; LinKList L; L=&List;
那么L为指向List的指针。
问题:1.我的理解的对错
2.L内的成员data用于存储变量的值还是变量的地址
3.若把某一地址赋给List内的成员next,那用L如何表示
------解决思路----------------------
1.对的
2.前者
3.LNode temp; L->next = &temp;
------解决思路----------------------
q是一个指向结构体的指针,如果对q进行了解引用,*q就是该指针所指向的结构体的对象,如果需要使用成员的话,请使用点操作符。所以应该是q->data, (*q).data这样使用结构中的成员。
------解决思路----------------------
typedef struct LNode{
ElemType data;
struct LNode *next;
}*LinkList;
这句typedef已经将LinkList变为LNode*的别名了,所以你上面在定义p的时候直接LinkList p就行了,在加个*就是二级指针了。
------解决思路----------------------
typedef struct LNode{
ElemType data;
struct LNode *next;
}*LinkList;
这句typedef已经将LinkList变为LNode*的别名了,所以你上面在定义p的时候直接LinkList p就行了,在加个*就是二级指针了。
谢谢你的回答,以下还有几个问题:
若修改为:
typedef struct ElemType{
float coef;
int expn;
}ElemType;
typedef struct LNode{
ElemType data;
struct LNode *next;
}*Link;
typedef struct {
Link head,tail;
int len;
}LinkList;
定义LinkList L;
1.L的tail成员中的data成员的coef的值应该如何表示
2.之前我学习的是谭浩强的书,没有关于结构体这方面的详细知识,请问在哪些书中有这方面的详细知识
L是个结构体变量,所以L.tail tail是个指向结构体的指针,所以tail->data, data也是个结构体变量,所以data.coef。所以就是L.tail->data.coef谭老师的书看完之后可以看下c primer plus期间可以看下郝斌的C语言的视频教程。之后看看c和指针和c陷阱与缺陷。我也是去年才开始学编程的,这也是我自己的学习路线。之后准备学啥就看你自己的喜好了,我之后又去学了c++,前段时间才看完c++primer,准备再看一遍。还有传智播客的网上有很多免费的视频,感觉讲的挺好的,有功夫可以去看看有什么自己想看的视频。谭老师的书看一遍就够,反正就是个领你上个道儿,后续的书籍也可以参考论坛里很多大神们推荐的书籍,看个2,3遍肯定是要的。