最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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) )不再求值,整個表達(dá)式的結(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)有很多方法,比如最簡單的條件表達(dá)式:

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

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

用邏輯或的短路:

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++實現(xiàn)冒泡排序(BubbleSort)

    C++實現(xiàn)冒泡排序(BubbleSort)

    這篇文章主要為大家詳細(xì)介紹了C++實現(xiàn)冒泡排序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • Qt編寫地圖之實現(xiàn)經(jīng)緯度坐標(biāo)糾偏

    Qt編寫地圖之實現(xiàn)經(jīng)緯度坐標(biāo)糾偏

    地圖應(yīng)用中都涉及到一個問題就是坐標(biāo)糾偏的問題,這個問題的是因為根據(jù)地方規(guī)則保密性要求不允許地圖廠商使用標(biāo)準(zhǔn)的GPS坐標(biāo),而是要用國家定義的偏移標(biāo)準(zhǔn)。本文將詳細(xì)講解如何在Qt中實現(xiàn)經(jīng)緯度坐標(biāo)糾偏,需要的可以參考一下
    2022-03-03
  • Qt+Live555搭建RTSP服務(wù)器的方法步驟

    Qt+Live555搭建RTSP服務(wù)器的方法步驟

    本文主要介紹了Qt+Live555搭建RTSP服務(wù)器的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 如何用C寫一個web服務(wù)器之基礎(chǔ)功能

    如何用C寫一個web服務(wù)器之基礎(chǔ)功能

    C語言是一門很基礎(chǔ)的語言,程序員們對它推崇備至,本文將帶著大家來看一下,如何用C寫一個web服務(wù)器。
    2021-05-05
  • C語言fillpoly函數(shù)詳解

    C語言fillpoly函數(shù)詳解

    在C語言中,fillpoly函數(shù)的功能是畫一個多邊形,并且把多邊形填充。填充邊框所定義的多邊形的內(nèi)部。fillpoly 函數(shù)的用法:void far fillpoly(int numpoints, int far *polypoints);。
    2015-10-10
  • C++中std::optional的使用指南分享

    C++中std::optional的使用指南分享

    C++?17?引入了std::optional,表示一個可能有值的對象,這篇文章主要來和大家聊聊std::optional的使用,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-06-06
  • C++冒泡排序及其優(yōu)化算法

    C++冒泡排序及其優(yōu)化算法

    這篇文章主要為大家介紹了C++冒泡排序及其優(yōu)化算法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2021-11-11
  • C++中隊列queue的用法實例詳解

    C++中隊列queue的用法實例詳解

    隊列先進先出,即只能在容器的末尾添加新元素,只能從頭部移除元素,下面這篇文章主要給大家介紹了關(guān)于C++中隊列queue用法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • 漫畫講解C語言中最近公共祖先的三種類型

    漫畫講解C語言中最近公共祖先的三種類型

    這篇文章主要總結(jié)了使用C語言查找最近公共祖先的三種方法類型,用漫畫的方式講解原理定義,看上去更生動形象,幫助你更好的理解透徹,快來跟著本文往下看吧
    2021-11-11
  • C++遞歸實現(xiàn)螺旋數(shù)組的實例代碼

    C++遞歸實現(xiàn)螺旋數(shù)組的實例代碼

    這篇文章主要介紹了C++遞歸實現(xiàn)螺旋數(shù)組的實例代碼,代碼簡單易懂,非常不錯,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-04-04

最新評論

南平市| 商河县| 内黄县| 怀来县| 都昌县| 乳山市| 宁乡县| 江油市| 麻城市| 建始县| 大邑县| 原阳县| 响水县| 萍乡市| 垣曲县| 游戏| 芷江| 门源| 宁河县| 赤城县| 永年县| 莎车县| 临桂县| 通化市| 巴楚县| 奉节县| 九台市| 个旧市| 苍南县| 灵石县| 云安县| 龙井市| 黔西县| 牡丹江市| 锡林郭勒盟| 东乡| 肥城市| 都兰县| 双峰县| 云林县| 邳州市|