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

c語言swap(a,b)值交換的4種實(shí)現(xiàn)方法

 更新時(shí)間:2013年02月25日 11:22:58   作者:  
c語言swap(a,b)值交換的4種實(shí)現(xiàn)方法,這么好的東西,盡管簡單,但值得發(fā)表,以此共享。

這篇文章所要表述的內(nèi)容的確很簡單,寫之前,我糾結(jié)了很久:寫與不寫。平常swap(a,b)值交換,我們基本都是使用第一種方法,對于數(shù)學(xué)較好的人,可能會想到第二種方法,想到時(shí),一定感覺很好,。對于匯編或?qū)ξ挥欣斫獾娜?,可能會想到第三種方法,這個方法很妙。但,真正促使我寫這篇文章的,還是第四種方法,妙,真的很妙,先(b = a),我是真沒想到,我想,這么好的東西,盡管簡單,但值得發(fā)表,以此共享。

swap(a,b)值交換的四種方法:

復(fù)制代碼 代碼如下:

void swap(int &a, int &b) 

    //方法一:  
    int tmp = 0; 
    tmp = b; 
    b = a; 
    a = tmp; 
    //方法二:  
    //a = a+b;  
    //b = a-b;  
    //a = a -b;  
    //方法三:  
    //a ^= b ^= a ^= b;  
    //方法四:  
    //a = a+b-(b=a);  


int main(void) 

    int a = 3; 
    int b = 4; 

    printf("before swap: a = %d, b = %d\n", a, b); 
    swap(a, b); 
    printf("after swap: a = %d, b = %d\n", a, b); 

    return 0; 

結(jié)果:

before swap: a = 3, b = 4

after swap: a = 4, b = 3


關(guān)于傳參方式有三種:值傳參、地址傳參、引用傳參(C++方法),上面使用的是第三種,引用傳參,因?yàn)檫@種傳參方式使得swap里面實(shí)現(xiàn)更為直觀。當(dāng)然,也可以使用第二種傳參方式地址傳參,不過,值傳參是不行的哦。

相關(guān)文章

  • C語言求素?cái)?shù)的幾種方式總結(jié)

    C語言求素?cái)?shù)的幾種方式總結(jié)

    這篇文章主要介紹了C語言求素?cái)?shù)的幾種方式總結(jié),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • C++ using namespace std 用法深入解析

    C++ using namespace std 用法深入解析

    以下是對C++中using namespace std的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下
    2013-07-07
  • C語言實(shí)現(xiàn)學(xué)生宿舍管理系統(tǒng)

    C語言實(shí)現(xiàn)學(xué)生宿舍管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)學(xué)生宿舍管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Linux下g++編譯與使用靜態(tài)庫和動態(tài)庫的方法

    Linux下g++編譯與使用靜態(tài)庫和動態(tài)庫的方法

    下面小編就為大家?guī)硪黄狶inux下g++編譯與使用靜態(tài)庫和動態(tài)庫的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • C++中的內(nèi)存分區(qū)介紹

    C++中的內(nèi)存分區(qū)介紹

    這篇文章主要介紹了C++中的內(nèi)存分區(qū)介紹,C++的內(nèi)存劃分為棧區(qū)、堆區(qū)、全局區(qū)/靜態(tài)區(qū)、字符串常量和代碼區(qū),本文分別對他們一一說明,需要的朋友可以參考下
    2015-07-07
  • C語言中typedef的用法以及#define區(qū)別詳解

    C語言中typedef的用法以及#define區(qū)別詳解

    這篇文章主要給大家介紹了關(guān)于C語言中typedef用法以及#define區(qū)別的相關(guān)資料,typedef 是用來定義一種類型的新別名的,它不同于宏(#define),不是簡單的字符串替換。而#define只是簡單的字符串替換(原地?cái)U(kuò)展),需要的朋友可以參考下
    2021-07-07
  • 在C++中高效使用和處理Json格式數(shù)據(jù)的示例代碼

    在C++中高效使用和處理Json格式數(shù)據(jù)的示例代碼

    最近的項(xiàng)目在用c處理后臺的數(shù)據(jù)時(shí),因?yàn)楹枚嗤獠拷涌诙荚谑褂肑son格式作為返回的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)描述,如何在c中高效使用和處理Json格式的數(shù)據(jù)就成為了必須要解決的問題,需要的朋友可以參考下
    2023-11-11
  • C/C++多態(tài)深入探究原理

    C/C++多態(tài)深入探究原理

    多態(tài)按字面的意思就是多種形態(tài)。當(dāng)類之間存在層次結(jié)構(gòu),并且類之間是通過繼承關(guān)聯(lián)時(shí),就會用到多態(tài)。C++?多態(tài)意味著調(diào)用成員函數(shù)時(shí),會根據(jù)調(diào)用函數(shù)的對象的類型來執(zhí)行不同的函數(shù)
    2022-06-06
  • c語言實(shí)現(xiàn)計(jì)算圓周率的近似值

    c語言實(shí)現(xiàn)計(jì)算圓周率的近似值

    這篇文章主要介紹了c語言實(shí)現(xiàn)計(jì)算圓周率的近似值方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • 一文搞懂C++11萬能引用和右值引用

    一文搞懂C++11萬能引用和右值引用

    本文主要介紹了C++11萬能引用和右值引用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評論

林芝县| 镇赉县| 达孜县| 石狮市| 清河县| 博白县| 富宁县| 龙井市| 西城区| 上蔡县| 克东县| 扎囊县| 会昌县| 汝州市| 黄山市| 宁德市| 景德镇市| 喀喇| 湄潭县| 汝南县| 乌拉特前旗| 佛山市| 卢氏县| 平昌县| 兴业县| 普定县| 阿鲁科尔沁旗| 连城县| 精河县| 嫩江县| 镇安县| 鹿邑县| 民县| 深水埗区| 石渠县| 东乌珠穆沁旗| 镇巴县| 武安市| 平塘县| 云阳县| 南澳县|