C++ 预期的声明说明符或'';在布尔之前

C++ 预期的声明说明符或'';在布尔之前,c++,c,C++,C,我用C函数写的: void func(int count,bool infini){ //... } 我尝试用代码块(GCC)编译此代码: “bool前应有声明说明符或“…” 。 bug在哪里?很可能是在C模式下编译的。C没有bool。改为使用int或包含stdbool.h以获得#定义bool(仅C99)的#定义(如果您的编译器没有或您不想使用stdbool.h,但GCC提供了此标题) 或者,在C99代码中,您可以使用\u Bool(这是C99中的一个关键字,很像Bool是C++),但

我用C函数写的:

    void func(int count,bool infini){
//...
}
我尝试用代码块(GCC)编译此代码:

“bool前应有声明说明符或“…”


bug在哪里?

很可能是在C模式下编译的。C没有
bool
。改为使用
int
或包含
stdbool.h
以获得
#定义
bool
(仅C99)的
#定义
(如果您的编译器没有或您不想使用
stdbool.h
,但GCC提供了此标题)


或者,在C99代码中,您可以使用
\u Bool
(这是C99中的一个关键字,很像
Bool
是C++),但请记住C99并没有得到广泛支持。

很可能您是在C模式下编译的。C没有
bool
。改为使用
int
或包含
stdbool.h
以获得
#定义
bool
(仅C99)的
#定义
(如果您的编译器没有或您不想使用
stdbool.h
,但GCC提供了此标题)


或者,在C99代码中,您可以使用
\u Bool
(这是C99中的一个关键字,很像
Bool
是C++),但是,请注意C99不是广泛支持的。

< P> >代码> Boo.<代码>是C++,但不是C.< /P> < P> >代码> BoOL >是C++,而不是C.< /P> <代码> BOOL不是C语言中的关键字。它是在标题
(C99)中定义的,您没有包括该标题。如果你不想包括头,你可以使用C99关键字<代码>“BooO./Cord>”。@ PMG应该把它作为答案:-@ cnututar:我不知道C++足够写包含两种语言的答案。一个注释对我来说是足够好的):@ PGM:<代码> BOOL是C++中的一个关键词。它是在标题
(C99)中定义的,您没有包括该标题。如果你不想包括头,你可以使用C99关键字<代码>“BooO./Cord>”。@ PMG应该把它作为答案:-@ cnututar:我不知道C++足够写包含两种语言的答案。一个注释对我来说是足够好的:)PGM:<代码> BOOL 是C++中的一个关键词。<代码>β布尔> <代码>可能与“代码> >代码>完全相同。 > BOOL/<代码>可能与“代码> >代码>完全一样。它不是C89或C90,而是C99,也就是C99。C@AliVeli:
bool
位于C99(和C11)中,但仅作为
中的宏
\u Bool
是相应的关键字。它不在C89或C90中,但在C99中,它也是C@AliVeli:
bool
在C99(和C11)中,但在
中仅作为宏
\u Bool
是相应的关键字。