Anonymous struct/union in C
2010年11月26日
Renesas的C编译器,不接受类似与windows中
LARGE_INTEGER的共用体。
也就是说:编译器C语言编译,
共用体中不可以有无名的结构体。
这是ms的扩展。
union LARGE_INTEGER {
struct {
DWORD lowpart;
LONG highpart;
};
LONGLONG quadpart;
};
问题:如果现在有大量的C语言代码这样用,
怎样做改动最小?
1. C++编译C代码。
2. 改动union,然后用智能化的代码编辑器来批量替换。
gcc 可以用-fms-extensions
既然是扩展,想移植就不应该用。
gcc 的说明:
http://gcc.gnu.org/ml/gcc-patches/1999-06n/msg0037 6.html
http://www.mailinglistarchive.com/xcode-users@list s.apple.com/msg03872.html
2010年11月26日
Renesas的C编译器,不接受类似与windows中
LARGE_INTEGER的共用体。
也就是说:编译器C语言编译,
共用体中不可以有无名的结构体。
这是ms的扩展。
union LARGE_INTEGER {
struct {
DWORD lowpart;
LONG highpart;
};
LONGLONG quadpart;
};
问题:如果现在有大量的C语言代码这样用,
怎样做改动最小?
1. C++编译C代码。
2. 改动union,然后用智能化的代码编辑器来批量替换。
gcc 可以用-fms-extensions
既然是扩展,想移植就不应该用。
gcc 的说明:
http://gcc.gnu.org/ml/gcc-patches/1999-06n/msg0037 6.html
http://www.mailinglistarchive.com/xcode-users@list s.apple.com/msg03872.html