C语言用while(true)编译报错

今天打了场cf,在电脑上运行好好的,提交代码却提示我while(true)编译错误,但在改成while(1)后程序最终编译成功了(然后成功T了!)。

编译错误

其中错误原因是

error:'true'undeclared(first use in this function)

于是上网查了查,查到的解释是:C语言没有bool类型,C语言中认为0为真,非0为假。电脑上默认选择的是C++,但是在cf里边默认(也可能是我自己不晓得啥时候换的吧~)是GNU C11,于是就出现了这么戏剧性的一幕。

后来又去网上查了查C与C++的关键字

C关键字

C++

果然C里边没有true和fault,只能说,吃一堑长一智啊~

参考

C不能用while(true)

C关键字

C++关键字

posted @ 2022-03-20 23:13  WHY139  阅读(1127)  评论(0编辑  收藏  举报