首页 > 代码库 > C 结构体零散知识点
C 结构体零散知识点
1、结构体无法把自己作为成员,但可以包含指向自己的指针成员
2、定义不完整结构类型(类型,结构,占用空间无法确定,如void指针,声明没有指明数组长度数组)只能使用小标签,即struct struct_name定义其成员
3、匿名结构体时赋值时可使用 . 代表当前变量,指定特定成员值
struct{int a; int b;} stu = {.a=1, .b=2}; printf("%d\n", stu.a);//输出1 stu.a = 123; printf("%d\n", stu.a);//输出123
如果结构体里再包含结构体,如下所示:
struct{int a; int b; struct{int c; int d}in;} stu = {.a=1, .b=2, .in.d=5}; printf("%d\n", stu.in.d);
此外结构体定义变量间分隔使用的是 ;
4、弹性结构成员,在结构体尾部声明一个未指定长度的数组成员,这种结构体一般以指针形式使用,在申请空间后,将指针指向其,并指定数组长度,为数组赋值,在对该结构体sizeof取值时,数组不计入,该结构体不可初始化
C 结构体零散知识点
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。