您的位置:首页 > 编程语言 > C语言/C++

C语言中的结构体,结构体中数组初始化与赋值

2018-01-03 10:18 441 查看
原作地址:https://www.cnblogs.com/zhangfeionline/p/5913905.html

最近写c语言中的结构体遇到了些问题,从网上找了些资料如下:

结构体是连续存储的,但由于结构体中成员类型各异,所以会存在内存对齐问题,也就是内存里面会有空档,具体的对齐方式这里
暂不讨论;


1.结构体的定义和赋值 


结构体是可以直接初始化的,在定义的时候,就可以初始化,而且如果你的结构体中恰好有字符数组的话,这个时候初始化是不错的选择,原因很简单,字符数组只能定义的时候直接初始化


后来就不可以了,后来你就只能用strcpy函数来拷贝初始化了。


struct 结构体名
{
数据类型   成员名1;
数据类型   成员名2;

数据类型   成员名n;
};


 2.定义结构体变量的俩种方法:


struct 结构体名
{
成员列表;
}变量名1;


struct 结构体名 变量名2;



 访问结构体成员
结构体变量名.成员名



3.结构体初始化操作


struct 结构体名 变量名={初始数据表};



无名结构体
没有类型名。
一般状态下:无名结构体不可以定义局部变量。


4.结构体嵌套



1--- 成员所属的数据类型是 结构体类型


2--- 内部的结构体通常定义为无名结构体





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: