C tiempo de compilación `verdadero 'no declarado (primer uso en esta función)

C Compile Time Trueundeclared

A veces recibo este error al compilar C:

'verdadero' no declarado (primer uso en esta función) o 'falso' no declarado (primer uso en esta función)

Es decir bool, true, false no están declarados, la razón es muy simple, porque la C real no tiene estas palabras clave, cy las primeras c + + sin palabra clave bool, use BOOL, pero BOOL no es un tipo incorporado , se pasan Typedefs o macros generalmente se definen como tipos int. Más tarde, c ++ mostró un tipo incorporado de bool, el valor solo puede ser verdadero (1) y falso (0).



Solución:

1. Cambie el nombre de archivo .c por el nombre de archivo.cpp. Compile con C ++. No hay problema.
2.Haga usted mismo una macrodefinición:
typedef enum __bool {false = 0, true = 1,} bool
c90 no es bool, por lo que dev-c ++ que admite c90 no lo hace. Si desea utilizar bool en c90, puede definirlo usted mismo.
c99 admite bool y se puede utilizar con un compilador que admita c99, como gcc.



|_+_|

Reimpreso en: https://www.cnblogs.com/muahao/p/7029113.html