gpt4 book ai didi

c - 为什么MinGW的stdio.h文件会导致语法错误?

转载 作者:行者123 更新时间:2023-11-30 16:17:27 25 4
gpt4 key购买 nike

我在 Eclipse 中有一个 C 项目,在 Windows 7 上使用 MinGW 进行编译。我在 stdio.h 中遇到了似乎源自项目外部的语法错误:

c:\mingw\include\stdio.h:345:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__mingw__snprintf'
extern int __mingw_stdio_redirect__(snprintf)(char*, size_t, const char*, ...);
^~~~~~~~~~~~~~~~~~~~~~~~
c:\mingw\include\stdio.h:349:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__mingw__vsnprintf'
extern int __mingw_stdio_redirect__(vsnprintf)(char*, size_t, const char*, __VALIST);
^~~~~~~~~~~~~~~~~~~~~~~~

编译命令为

gcc -D_WIN32_WINNT=0x0601 -DprojCOVERAGE_TEST=0 -O0 -g3 -Wall -Wextra -c 
-fmessage-length=0 -Wcast-qual -o "Interface.o" "Interface.c"

我想了解导致这些错误的原因,以便在不编辑 stdio.h 的情况下进行编译。

最佳答案

该问题是由于 stdio.h 包含在错误的位置引起的。将其包含在文件开头解决了该问题。

关于c - 为什么MinGW的stdio.h文件会导致语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56259440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com