我有一个C结构,大约有17个成员struct settings currentProfile,希望将其所有成员初始化为零。(我用uber correct struct语法和typedef语法都试过)
要将所有成员设置为零,我使用currentProfile = {0}
在这一行,编译器给出错误Expected an expression
我的缩写正确吗?
谢谢

最佳答案

您所做的分配(无效)不是初始化。
要在所有成员设置为0的情况下初始化struct对象:

struct settings currentProfile = {0};

要在结构对象声明后将其所有成员设置为0,请执行以下操作:
memset(&currentProfile, 0, sizeof currentProfile);

09-12 06:36