亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++短路求值(邏輯與、邏輯或)實例

 更新時間:2014年10月08日 11:26:42   投稿:shichen2014  
這篇文章主要介紹了C++短路求值(邏輯與、邏輯或)實例,以實例形式講述了邏輯或的短路與邏輯與的短路及相應(yīng)的應(yīng)用實例,需要的朋友可以參考下

本文實例講述了C++短路求值(邏輯與、邏輯或),分享給大家供大家參考。具體方法分析如下:

1、邏輯或的短路

首先看如下代碼:

#include <iostream>
using namespace std;
int main()
{
  int a = 1;
  cout << "a = " << a <<endl;
  true || (a=0);
  cout << "a = " << a <<endl;
}

運行結(jié)果如下:

a = 1

a = 1

邏輯或的表現(xiàn)形式如下:

expression1 || exexpression2

這里用到了邏輯或,由于邏輯或的短路,expression1為true,則后面的expression2(即:(a=0) )不再求值,整個表達式的結(jié)果為true,所以a的值仍為1,沒有改變。

2、邏輯與的短路

首先看如下代碼:

#include <iostream>
using namespace std;
int main()
{
  int a = 1;
  cout << "a = " << a <<endl;
  false && (a=3);
  cout << "a = " << a <<endl;
}

運行結(jié)果如下:

a=1

a=1

邏輯與的表現(xiàn)形式如下:

expression1 && exexpression2

上述代碼中用到了邏輯與,由于邏輯與的短路,expression1為false,則后面的expression2不再求值,整個的結(jié)果為false,所以a的值沒有改變。

3、應(yīng)用舉例

這里以CSDN上的一個帖子為例(http://topic.csdn.net/u/20121011/10/c7e0a805-b4e2-44db-9d71-455f5f851240.html ):

不用if語句,不用匯編,怎么使得兩數(shù)之積總是小于等于255?

大家看過帖子會發(fā)現(xiàn)有很多方法,比如最簡單的條件表達式:

result = ((a*b) > 255) ? 255 : a*b;

這個是最先被人提出的,但好像樓主不認同,那就試下以下兩種方式:

用邏輯或的短路:

bool tmp = ((result = a*b) < 255) || (result=255);

用邏輯與的短路:

bool tmp = ((result = a*b) >= 255) && (result=255);

完整代碼如下:

#include <iostream>
using namespace std;
int main()
{
  int a,b,result;
  while (true)
  {
    cin>>a>>b;
//    result = ((a*b) > 255) ? 255 : a*b;
//    bool tmp = ((result = a*b) < 255) || (result=255);
    bool tmp = ((result = a*b) >= 255) && (result=255);
    cout<<result<<endl;
  }
}

運行效果如下:

希望本文所述對大家的C++程序設(shè)計有所幫助。

相關(guān)文章

  • C++中STL的常用算法總結(jié)

    C++中STL的常用算法總結(jié)

    這篇文章主要介紹了C++?STL中一些常見算法的使用,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • 基于C++的攝像頭圖像采集及拼接程序的簡單實現(xiàn)

    基于C++的攝像頭圖像采集及拼接程序的簡單實現(xiàn)

    本程序是在?ubuntu14.04?平臺下實現(xiàn)的,在本項目目錄下,已經(jīng)有編譯生成的可執(zhí)行程序,其中Camera_to_Frmae.cpp是我們從雙攝像頭實時抓取單幀圖像的源碼,對基于C++的攝像頭圖像采集及拼接程序的實現(xiàn)感興趣的朋友一起看看吧
    2022-01-01
  • C++編譯錯誤variable-sized?object?may?not?be?initiali問題

    C++編譯錯誤variable-sized?object?may?not?be?initiali問題

    這篇文章主要介紹了C++編譯錯誤variable-sized?object?may?not?be?initiali問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 學(xué)生成績管理系統(tǒng)C++實現(xiàn)代碼

    學(xué)生成績管理系統(tǒng)C++實現(xiàn)代碼

    這篇文章主要為大家詳細介紹了學(xué)生成績管理系統(tǒng)C++實現(xiàn)代碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12
  • c++11 chrono全面解析(最高可達納秒級別的精度)

    c++11 chrono全面解析(最高可達納秒級別的精度)

    chrono是c++ 11中的時間庫,本文就來詳細的介紹一下chrono庫的具體使用,關(guān)鍵是理解里面時間段(Durations)、時間點(Time points)的概念,感興趣的可以了解一下
    2021-11-11
  • C語言實現(xiàn)簡單的五子棋小游戲

    C語言實現(xiàn)簡單的五子棋小游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)簡單的五子棋小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 基于C++實現(xiàn)的線程休眠代碼

    基于C++實現(xiàn)的線程休眠代碼

    這篇文章主要介紹了基于C++實現(xiàn)的線程休眠代碼,包括了Linux平臺及基于boost庫的兩種實現(xiàn)方法,有不錯的參考借鑒價值,需要的朋友可以參考下
    2014-10-10
  • C語言 map函數(shù)的基礎(chǔ)用法詳解

    C語言 map函數(shù)的基礎(chǔ)用法詳解

    這篇文章主要為大家介紹了C語言 map函數(shù)的基礎(chǔ)用法,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • C語言學(xué)生成績管理系統(tǒng)小設(shè)計

    C語言學(xué)生成績管理系統(tǒng)小設(shè)計

    這篇文章主要為大家詳細介紹了C語言學(xué)生成績管理系統(tǒng)小設(shè)計,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • 利用C++編寫簡易寶可夢對戰(zhàn)小游戲

    利用C++編寫簡易寶可夢對戰(zhàn)小游戲

    本文利用C++語言編寫了一個小時候課間嘴上玩的那種寶可夢游戲,只有早期的三個寶可夢和基礎(chǔ)招式,感興趣的朋友快跟隨小編一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06

最新評論