【发布时间】:2010-01-26 11:39:53
【问题描述】:
这些sn-ps代码都不起作用:
int main() {
struct mystruct {
int a;
char* b;
char* c;
} e,f;
e = {5, "blaat", "boe"};
return 0;
}
错误:“{”标记的语法错误
int main() {
struct mystruct {
int a;
char* b;
char* c;
} e,f;
struct mystruct e = {5, "blaat", "boe"};
return 0;
}
错误:'e' 的先前声明在这里
正确的方法是什么?
【问题讨论】:
-
C99 允许在声明之外进行结构赋值,因此您的第一个代码 sn-p 对于 C99 编译器应该没问题
-
看看这里的另一个问题,关于交换结构,使用数组,仔细阅读代码......它会帮助你......stackoverflow.com/questions/2138872/…