系统相关
首页 > 系统相关> > c – 适用于Windows的MinGW编译器,使用GCC,C99和GNU99

c – 适用于Windows的MinGW编译器,使用GCC,C99和GNU99

作者:互联网

我正在使用适用于Windows的MinGW编译器.我在C中制作了一些程序.我读到的大部分文章似乎都已经过时了……最后我读到C99在GCC中是不完整的,这仍然是真的吗?我真正的问题是设置C99和GNU99之间的跨平台兼容性…我应该避免使用GNU99设置和它的扩展,只是坚持使用C99?我是这个MinGW编译器集的新手,因为我一直使用Visual Studio并决定尝试新的东西……现在我正在使用这些设置编译…

-march=native -O3 -std=gnu99

是否有任何推荐的编译器命令我应该输入用于制作C程序以及用这个编译器制作C程序?

我想制作一个与Windows,Mac和Mac兼容的简单程序. Linux但首先是大多数Windows.

解决方法:

关于C,Visual Studio until recently不支持C99 at all.

关于gcc,你可以找到一个详细的detailed writeup,它们支持哪个标准以及所涉及的角落和缝隙.他们也有一个很好的list of extensions支持他们.您需要对gcc和扩展稍微小心,因为只指定要使用哪个标准不足以在使用扩展时生成警告或错误.例如,您可能会惊讶于使用:

gcc -std=c90 -W -Wall

允许您在没有警告的情况下使用variable length arrays.为了生成警告,您需要添加-pedantic:

gcc -std=c90 -W -Wall -pedantic

然后这将产生类似于此的警告:

warning: ISO C90 forbids variable length array ‘array’ [-Wvla]

标签:c-3,c,c99,compiler-construction,mingw
来源: https://codeday.me/bug/20190831/1777467.html