C/C++日常學習總結(第十五篇)邏輯運算符對於負數的處理

      基礎考驗,下面是華爲的一道面試題,如果基礎不紮實,就很容易跟着自己的思路走了,先看題。

int fun1(int i)
{
 return i++;
}
int fun2(int i)
{
 return i--;
}
int fun3(int i)
{
 return ++i;
}

int i = -10;
i = fun1(i)||fun2(i)||fun3(i);

如果我們輸入的i是一個正值,我們會毫無疑問填寫1,但是如上面列子,是一個負數,那結果會是什麼?正確答案還是1.大家可以敲下代碼試驗下。

 

解釋:在邏輯運算符操作中只有0,1之分,也就是false和true之分,而負數對應的邏輯值是true,所以這題不管i是何值,其結果只有一個。

發佈了99 篇原創文章 · 獲贊 21 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章