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