2013-10-24 36 views
1

道歉爲模棱兩可的標題,但我根本不知道如何把它。函數調用+計算返回值+比較C中的計算值

無論如何,我希望一段代碼來做到這一點做同樣的事情在同一行(在if語句)

ret= fee(XYZ); 
if((fii(ret) && foh(ret)) !=0) 
{ 
    //do something 
} 

喜歡把所有的成類似

if(_______FUM________)  
{ 
    //do the same thing 
} 

是有什麼我可以爲此做的?答案可能是盯着我的臉。但我被困在這裏。

+1

你爲什麼要這麼做?你是否用新行支付代碼存儲空間? – Jon

+0

不,我實際上在編輯一段包含if-else語句的代碼,如果我用了兩行,需要更多的編輯。 – umayneverknow

+1

也許更好的解決方案是重構代碼,使其不是複製麪食一樣多? – Jon

回答

3

您可以使用comma operator

if(ret = fee(XYZ), (fii(ret) && foh(ret)) !=0) 

但是,爲什麼?

(此外,!=0似乎是多餘的。)

+0

這工作出色!非常感謝! – umayneverknow

+0

而0部分是一個不好的例子,因爲我沒有檢查!= 0,但實際上是一個已定義的宏。 – umayneverknow