if语句的一个错误记录,多了个“;”号
生活随笔
收集整理的這篇文章主要介紹了
if语句的一个错误记录,多了个“;”号
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
if語句的一個編譯器只報warning的錯誤記錄,其實(shí)已經(jīng)是bug了,但是沒報錯,一直不怎么看warning,今天無意間看到了,記錄一下,直接上代碼了。
#include <iostream> using namespace std;int main() {if(0);{cout << "asdfsdafsda";}return 0; }分析:
if()語句后多了個";"號,相當(dāng)于把if(){}語句割裂了,
變成了
if();
{};
?
這樣括弧里的代碼就一直被執(zhí)行了。if判據(jù)相當(dāng)于沒生效。
?
其實(shí)已經(jīng)破壞了if語句的語法結(jié)構(gòu)了,多個else的話,編譯就會報錯?了。就很容易查出來了。
所以建議大家寫if語句還是能加else盡量加上吧,不然出了這個錯,很容易遺漏,要不是看了warning,都發(fā)現(xiàn)不了這個錯誤。。。。。。
?
總結(jié)
以上是生活随笔為你收集整理的if语句的一个错误记录,多了个“;”号的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 出现这些迹象,说明你面试可能没戏了
- 下一篇: 腾讯微博虽然停运,但其仍是一款成功的产品