1樓:冒曼珠鄔海
比如:if
(i<0)//這裡沒有分號
i=0;
上面那個語句沒有分號,如果i<0(即所說的條件為真),那麼會執行i=0.如果是這樣
if(i
<0);//這裡有分號
i=0;
那麼相當於
if(i
<0);;
i=0;
第一個分號之前什麼都沒有,所以就是執行空語句
2樓:益忍尚兒
if(條件表示式)
語句段1;
這時候如果你在
if(條件表示式)後面加分號就成了:
if(條件表示式);
語句1;
這樣,當條件表示式為真和不為真,都會執行語句1,且為真時,執行的是空語句,即分號前的語句,相當於:
if(條件表示式)
空語句;
語句1;
3樓:顏香菱度蘊
因為加分號表示一行語句,而你if後面加分號,程式認為你if之後沒有語句了,所以下一行的語句跟if沒關係了,直接導致不管if判斷是否成立都會執行下一行語句。
在c語言中編譯器認為一行**的條件是;號不是換行符,所以即使兩行沒加分號,編譯器也認為是一行語句。
4樓:琴雅豔刀友
if(n>3)
i++;這樣寫,如果條件(n>3)成立,那麼i才會自增。
if(n>3);
i++;這樣寫,不管條件(n>3)是否成立,i都會自增,因為if語句執行了一條空語句。所以建議這樣寫:
if(n>3)
關於for迴圈語句後的分號問題,在C語言中,for語句的後面加分號和不加分號有何不同,該分號有什麼作用?
可愛的小知道 for 表示式1 表示式2 表示式3 語句 執行過程如下 1 先求解表示式1。2 求解表示式2,若其值為真,則執行for語句中指定的內嵌語句,然後執行下面第3 步 若其值為假,則結束迴圈,轉到第5 步。3 求解表示式3。4 轉回上面第2 步繼續執行。5 迴圈結束,執行for語句下面的一...
c語言中語句和指令有什麼區別,C語言中“語句”和“指令”有什麼區別?
a羅網天下 區別一 構成不一樣 1 c程式的執行部分是由語句組成的。程式的功能也是由執行語句實現的。2 指令可以使編譯器按不同的條件編譯不同的程式部分,因而產生不同的目標 檔案。這對於程式的移植和除錯是很有用的,尤其是針對於跨平臺程式移植的時候。區別二 實現功能不一樣 1 c程式語言可以實現多種程式...
C語言賦值語句,C語言中賦值語句有什麼規則要求?
選ab中取模右邊不是整數 c中賦值號左側不是一個變數 d中第二個賦值號左側不是一個變數 吉祥二進位制 c語言中通過 運算子來實現賦值,有時候也用它來進行初始化,在c語言中初始化和賦值是完全兩個不同的概念。比如下面的 int a 10 這是初始化a 0 10 這是賦值 初始化是一個順序點,編譯器保證每...