爲什麼我們不能在C中使用三元運算符中的return關鍵字,如下所示: sum> 0?返回1:返回0;三元運算符和迴歸C
回答
return
是一個聲明。語句不能以這種方式在表達式中使用。
因爲三元操作是一個表達式,所以不能在表達式中使用語句。
儘管你可以很容易地使用三元運算符。
return sum > 0 ? 1 : 0;
或者作爲DrDipShit指出:
return sum > 0;
只是:return sum> 0;無論如何,它返回1或0。 – 2010-08-25 13:47:59
@DrDipShit:非常真實,在這種情況下,它的工作原理也一樣:) – Wolph 2010-08-25 15:03:25
因爲return
是一個語句,不是表達式。你也不能這樣做int a = return 1;
。
參見三元操作符的語法是
expr1 ? expr2: expr3;
其中expr1
,expr2
,expr3
是表達式;
?:
工作原理如下 expr1
首先計算如果這是真的expr2
進行評估,否則expr3
評估操作。
因此在表達式中返回聲明不能用於C語言。
-1,並沒有真正回答這個問題。也不是旨在爲您的網站吸引流量 – Hasturkun 2010-08-25 16:43:36
僅僅通過查看語法,您應該知道語句不能用在表達式中。 你想要什麼可以通過這樣做達到:return sum > 0 ? 1 : 0;
- 1. C三元運算符
- 2. 三元運算符C
- 3. 三元運算符shorthands?和?:
- 4. 三元運算符
- 5. 三元運算符作爲C宏中三元運算符的操作數
- 6. 三元運算符的單個返回
- 7. 返回投擲三元運算符?
- 8. 三元運算符複雜返回?
- 9. 返回Collections.emptyList()失敗,三元運算符
- 10. C#三元運算符不工作
- 11. java vs c中的三元運算符
- 12. C中的三元運算符#
- 13. 使用C#三元運算符
- 14. C++,三元運算符,性病::法院
- 15. C中三元運算符的邏輯?
- 16. 三元運算符和函數簽名
- 17. 輸出:關係和三元運算符?
- 18. 軌道三元運算符和'這'
- 19. 道具和三元運算符
- 20. RedirectToAction()與View()和三元運算符?
- 21. 三元運算符用法?
- 22. &&使用三元運算符
- 23. 執行三元運算符
- 24. 關於三元運算符..!
- 25. 使用三元運算符
- 26. 替代三元運算符
- 27. 三元運算符在foreach
- 28. Ruby三元運算符
- 29. java三元運算符
- 30. 三元運算符用法
'return sum> 0有什麼問題? 1:0;'? – 2010-08-25 13:42:45
或者就此而言,if(sum> 0)返回1;否則返回0;' – 2010-08-25 13:46:09
感謝所有的答覆。返回和> 0沒有問題? 1:0;我只是想知道爲什麼我們不能以上述方式在問題中使用它。 – nullpointerexception 2010-08-25 13:46:55