初始化时只能对整个结构体变量进行,不能对结构体类型中的合成员进行初始化赋值,, 不允许对结构体变量

初始化时只能对整个结构体变量进行,不能对结构体类型中的合成员进行初始化赋值,,
不允许对结构体变量整体赋值,,
这里,,搞不懂了,,初始化赋值与一般的赋值有什么本质区别吗??(⊙o⊙)?

初始化,是一个空箱子,把值装进去。
赋值,是把原来的拿走,再把值装进去。

至于你提到的,没这个说法。
初始化的时候,可以部分赋值,不过没被赋值的变量,默认为0.
比如
struct t
{
int a,b,c;

};
struct t var={1,2};
这里a和b就是1和2. c没有赋值,默认为0.

而赋值,同样也是可以整体的,比如
var = (struct t){3,4,5};
这个就可以把abc赋值成345.

经过几次发展后,现在C也算比较灵活了,很多说法已经过时了。
温馨提示:答案为网友推荐,仅供参考
相似回答