我正在将一些(工作)代码从Linux移植到Windows 8.我正在使用DDK。
typedef struct {
unsigned int test1;
unsigned int test2;
} settings;
const settings vp_settings = {
.test1 = 1,
.test2 = 1
};
Windows DDK编译器和GCC有何不同之处?我得到的错误,假设typedef struct {
是第1行并且编号正常继续:
(7):错误:C2059:语法错误:'。'
如何以不会出现语法错误的方式编写本文?我想保留相同的成员名称,所以我不需要改变代码库的其余部分。期间是多余的,可以删除吗?
答案 0 :(得分:2)
问:(香草)有什么问题:
const settings vp_settings = {
1, /* test1 */
1 /* test2 */
};
PS:
How to rewrite C-struct designated initializers to C89 (resp MSVC C compiler)
这看起来像C99的东西......而AFAIK MSVS 不完全支持C99 ......
答案 1 :(得分:1)
看起来您的编译器不支持C99 designated initializers。
也许您的编译器需要命令行开关才能启用C99功能?