我有一个C结构,大约有17个成员struct settings currentProfile
,希望将其所有成员初始化为零。(我用uber correct struct语法和typedef语法都试过)
要将所有成员设置为零,我使用currentProfile = {0}
在这一行,编译器给出错误Expected an expression
我的缩写正确吗?
谢谢
最佳答案
您所做的分配(无效)不是初始化。
要在所有成员设置为0
的情况下初始化struct对象:
struct settings currentProfile = {0};
要在结构对象声明后将其所有成员设置为
0
,请执行以下操作:memset(¤tProfile, 0, sizeof currentProfile);