关于c语言的结构体
struct name_s{
type data;
};
typedef struct name_s name_t;
name_t var;
typedef struct{
type data;
}name_t;
name_t var;
为什么有的代码里会同时存在这两种定义呢,有区别吗,什么时候该用哪一种呢?
c
[解决办法]
typedef struct{
type data;
}name_t,*name_p;
name_t st; 定义一个名为 st 结构变量。
name_p sp; 定义一个名为 sp 指针变量
标准用法。其他用法,自行理解。
[解决办法]
两个结构体相互指向的时候,用typdef
结构体里面包含指向自身类型的指针时,用typdef
还有就不知道了
[解决办法]
可能是不同人写得吧
[解决办法]
两种都可以的!个人编码风格不同而已!
我用下面一种居多!
[解决办法]
c语言的话 第二种编译可以通过吗
[解决办法]
个人写法不同吧,我的理解是主要在typedef上
typedef [已有类型名] [新类型名]
第一种就是先定义类型,然后根据新的类型名再定义新的类型名
第二种可以把中间的结构体定义看作一个整体,也就像当于一个类型名喽,其实都是一样一样滴
[解决办法]
为什么有的代码里会同时存在这两种定义呢?
同时存在的话,不加命名空间,肯定会报:变量已经定义的错误。
[解决办法]
两种都可以,没有区别,习惯而已
[解决办法]