標(biāo)題:
C語言if語句if() {}里什么都不做,可以空白或空指令嗎?
[打印本頁]
作者:
李冬
時(shí)間:
2022-11-8 11:12
標(biāo)題:
C語言if語句if() {}里什么都不做,可以空白或空指令嗎?
if() {}里什么都不做,可以空白嗎,或者用什么空指令
另個(gè)問 if(mm[1]==1&&mm[2]==1&&mm[3]==1&&mm[4]==1 )
可以這樣寫嗎
if(mm[1]==mm[2]==mm[3]==mm[4]==1)
作者:
xuyaqi
時(shí)間:
2022-11-8 13:07
既然 if 什么都不做,就不要這條語句好了,另個(gè)問是可以的。
作者:
Sean_Shao
時(shí)間:
2022-11-8 14:07
樓主所提到的問題 涉及兩方面:
1 程序邏輯
這個(gè) 建議樓主 畫流程圖 來理順 程序的邏輯走向 不要腦袋想到哪里 寫到哪里 這無異于給自己埋的雷 最后 程序的邏輯一定是亂麻一團(tuán)。
既然 if語句 后面什么都不做 那么需要做的是什么呢 這個(gè)才是程序語言應(yīng)該表達(dá)的部分 也就是說除了條件里面所描述情況外的情況 才是程序應(yīng)該處理和表達(dá)的
2 語言邏輯
這個(gè)建議樓主 先把自己所使用語言的 邏輯運(yùn)算符的優(yōu)先級(jí)和結(jié)合性 概念仔細(xì)研究 搞清楚
至于 能夠像你提到的哪樣 做替換 請(qǐng)參考下面的程序
#include <iostream>
int main() {
int a=1,b=1,c=1,d=1;
if (a==b==c==d==1)
{
std::cout << "a==b==c==d==1";
}
return 0;
}
輸出:a==b==c==d==1
#include <iostream>
int main() {
int a=3,b=3,c=3,d=3;
if (a==b==c==d==3)
{
std::cout << "a==b==c==d==3";
}
return 0;
}
沒有輸出
為什么會(huì)出現(xiàn)這種情況 請(qǐng)樓主按照我上面所說 仔細(xì)研究語言的規(guī)范后 自行得出答案.
以上所說 都是基本功 磨刀不誤砍柴工 僅供參考。。
作者:
Hephaestus
時(shí)間:
2022-11-8 14:08
你試試不就知道了嗎?
作者:
wjhhhhh
時(shí)間:
2022-11-8 14:09
在Keil2、3、4 的C 里if(mm[1]==1&&mm[2]==1&&mm[3]==1&&mm[4]==1 )會(huì)出錯(cuò),要多加小括號(hào)
if( (mm[1]==1 ) && (mm[2]==1) && (mm[3]==1 ) && (mm[4]==1 ) )
這種寫法if(mm[1]==mm[2]==mm[3]==mm[4]==1) 沒試過,估計(jì)過不去。
作者:
yzwzfyz
時(shí)間:
2022-11-9 14:21
何必呢?
作者:
chenshandeng
時(shí)間:
2022-11-9 15:08
你需要在后面加個(gè);這樣才是if空語句,不然報(bào)錯(cuò)的
作者:
lzd918
時(shí)間:
2022-11-9 16:07
不可以,語法不符合,編譯通過不了
作者:
lhzw2001
時(shí)間:
2022-11-9 16:17
可以,加個(gè)分號(hào),或大括號(hào)
作者:
Longan.Wang
時(shí)間:
2022-11-9 17:13
不可以!以后問之前,先試試!
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1