欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

c語言宏定義swap函數(shù) c語言函數(shù)調(diào)用例子swap

c語言中swap是個什么函數(shù)?

swap函數(shù)一般是一個程序員自定義函數(shù),是實現(xiàn)兩個變量數(shù)值的交換。

創(chuàng)新互聯(lián)服務(wù)項目包括和田縣網(wǎng)站建設(shè)、和田縣網(wǎng)站制作、和田縣網(wǎng)頁制作以及和田縣網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,和田縣網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到和田縣省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

1、比如:

int a = 2;

int b =3;

swap(a,b); //一般用到變量數(shù)值交換,交換后a=3 b = 2;

2、通過使用臨時變量實現(xiàn)交換。

void swap1(int x,int y)

{

int temp;

temp=x;

x=y;

y=temp;

}

擴展資料

C語言swap函數(shù)的使用

#includestdio.h

void swap(int *pa,int *pb)

{

int temp;

temp=*pa,*pa=*pb,*pb=temp;

}

void main()

{

int a=10,b=20;

swap(a,b);//傳遞的是實參變量a,b的地址

printf("a=%d,b=%d\n",a,b);

}

c語言宏定義函數(shù)如何調(diào)用?

直接調(diào)用即可。如下示例:

#includestdio.h#define sum(b,c){int d=0;d=b+c;printf("兩者的和:%d\n",d);}int main(){ int x=0,y=0; scanf("%d%d",x,y); sum (x,y); return 0;}使用宏函數(shù)或者宏函數(shù)時,注意如下幾點:

(1)宏函數(shù)的參數(shù)沒有類型,預處理器只負責做形式上的替換,而不做參數(shù)類型檢查,所以傳參時要格外小心。

(2)宏函數(shù)定義要注意格式,尤其是括號。

如果上面的宏函數(shù)寫成 #define MAX(a, b) (ab?a:b),省去內(nèi)層括號,則宏展開就成了k = (i0x0fj0x0f?i0x0f:j0x0f),運算的優(yōu)先級就錯了。同樣道理,這個宏定義的外層括號也是不能省的。若函數(shù)中是宏替換為 ++MAX(a,b),則宏展開就成了 ++(a)(b)?(a):(b),運算優(yōu)先級也是錯了。

(3)宏函數(shù)往往會導致較低的代碼執(zhí)行效率。

 int a[]={9,3,5,2,1,0,8,7,6,4};int max(n){return n==0?a[0]:MAX(a[n],max(n-1));}int main(){max(9);return 0;}若是普通函數(shù),則通過遞歸,可取的最大值,時間復雜度為O(n)。但若是宏函數(shù),則宏展開為( a[n]max(n-1)?a[n]:max(n-1) ),其中max(n-1)被調(diào)用了兩遍,這樣依此遞歸下去,時間復雜度會很高。

c語言編程:定義swap宏(程序填空)

#define?swapInt(a,b)?a^=b^=a^=b;

#define?swap(a,b)????a+=b;?b=a-b;?a-=b;

#define?swap1(t,a,b)?t=a;a=b;b=t;

C語言:定義宏swap(x,y)用于交換兩個參數(shù)x和y的值,并編寫程序測試

思路:交換a和b只要有三種方法:

引入變量t:t=a;a=b;b=t;

#includestdio.h??

#define?swap(a,b)?{int?t;?t=a;?a=b;?b=t;?}

int?main()?

{??

int?a,b;

scanf("%d%d",a,b);

swap(a,b);

printf("%d?%d\n",a,b);

return?0;

}

/*

輸出:?

1?2

2?1

*/

加減法:a=a+b;b=a-b;a=a-b;

#includestdio.h??

#define?swap(a,b)?{a=a+b;b=a-b;a=a-b;}

int?main()?

{??

int?a,b;

scanf("%d%d",a,b);

swap(a,b);

printf("%d?%d\n",a,b);

return?0;

}

/*

輸出:?

1?2

2?1

*/

位運算:a=a^b;b=a^b;a=a^b;

#includestdio.h??

#define?swap(a,b)?{a=a^b;b=a^b;a=a^b;}

int?main()?

{??

int?a,b;

scanf("%d%d",a,b);

swap(a,b);

printf("%d?%d\n",a,b);

return?0;

}

/*

輸出:?

1?2

2?1

*/

C語言中swap的作用和用法

swap函數(shù)一般是一個程序員自定義函數(shù)。

通常是實現(xiàn)兩個變量數(shù)值的交換,用法比較廣泛。

可使用臨時變量實現(xiàn)交換;可通過臨時指針變量實現(xiàn)交換;可借助指針加入臨時變量來實現(xiàn)交換。

return 0;

}

swap1: x:4,y:3

swap2: x:4,y:3

swap3: x:3,y:4

swap4: x:4,y:3

swap5: x:3,y:4

swap6: x:4,y:3

swap7:ppx:3,ppy:4

拓展資料:

計算機中swap函數(shù)很多,在不同領(lǐng)域有不同的用法,但都是交換的意思。比如字符串交換swap操作實現(xiàn)交換兩個容器內(nèi)所有元素的功能。要交換的容器的類型必須匹配: 必須是相同類型的容器,而且所存儲的元素類型也必須相同。調(diào)用了swap函數(shù)后,右操作數(shù)原來存儲的元素被存放在左操作數(shù)中,反之亦然。

網(wǎng)頁標題:c語言宏定義swap函數(shù) c語言函數(shù)調(diào)用例子swap
標題鏈接:http://chinadenli.net/article28/dodigcp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、品牌網(wǎng)站建設(shè)、網(wǎng)站排名、網(wǎng)站收錄、外貿(mào)建站、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作