#include <stdio.h>
int const NAMESIZE = 40;
int const ADDRSIZE = 80;
typedef char NameType[NAMESIZE];
typedef char AddrType[ADDRSIZE];
typedef struct
{
NameType name;
AddrType address;
double salary;
unsigned int id;
}EmpRecType;
int main(int * argc, char * argv[])
{
EmpRecType employee;
return 0;
}
如果我使用#define而不是const,它会编译。 这是错误:任何人都知道为什么这个C代码不会编译?
employee.c:5:14:错误:6:14:错误:可变地在文件范围 employee.c改性 'NAMETYPE' 可变改性 'ADDRTYPE' 在文件范围
没有给出什么错误? –
[文件范围内可变修改数组]的可能重复(http://stackoverflow.com/questions/1712592/variably-modified-array-at-file-scope) –
不应该是'const int'而不是' int const'? –