色94色欧美sute亚洲,日本在线观看精品视频,国产欧美亚洲小说视频,亚洲高清视频一区二区三区

C代碼交換a,b值的方式不一樣

請注意,為官方帳戶加注星標(biāo),不要錯過令人興奮的內(nèi)容。

轉(zhuǎn)移自:嵌入式Hodgepodge交換a和b的值是學(xué)習(xí)C語言時非常常見的問題。

最常見的方法是引入一個中間變量作為中間介質(zhì)來交換a和b的值。

代碼如下:void change_ab(int * a,int * b){int temp = 0; temp = * a; * a = * b; * b = temp;}注意,不能將其編寫為以下代碼:void change_ab(int a,Int b){int temp = 0; temp = a; a = b; b = temp;}普通變量的傳輸不會更改內(nèi)存內(nèi)容。

當(dāng)使用普通變量作為參數(shù)時,它們實際上是在內(nèi)存塊(堆??臻g)中眾信申請了一個空閑塊,而不是原始的內(nèi)存塊,并且在調(diào)用該函數(shù)之后,新應(yīng)用的內(nèi)存塊將被系統(tǒng)回收。

由于變量的范圍無效。

如果將指針作為實際參數(shù)傳遞,即過去的內(nèi)存地址被傳遞,則操作指針指向的內(nèi)存塊將不可避免地更改內(nèi)存的內(nèi)容。

以上方法是最常用的方法。

因此,您知道如何在不使用任何其他中間變量的情況下交換a和b的值嗎?方法1:使用算術(shù)方法void change_ab(int * a,int * b){* a = * a + * b; * b = * a- * b; * a = * a- * b;}方法2:使用XOR方法void change_ab(int * a,int * b){* a = * a ^ * b; * b = * a ^ * b; * a = * a * b;}方法1具有潛力當(dāng)形式參數(shù)的類型更改為無符號16位時,如果a和b的值較大,則該值a + b的值可能超出16位整數(shù)可以表示的范圍,從而導(dǎo)致編程操作錯誤。

第二種方法不存在此問題,這是一種更好的方法。

推薦閱讀:C ++中的字符編碼轉(zhuǎn)換教您如何使用STM32Trust生成加密的固件。

ELF與十六進(jìn)制和Bin文件格式有什么區(qū)別?關(guān)注微信公眾號“ strongerHuang”,回復(fù)“ 1024”。

在后臺查看更多內(nèi)容,請在“按照規(guī)定加入技術(shù)交流小組。

長按以跟隨圖片中包含的官方帳戶。

免責(zé)聲明:本文內(nèi)容經(jīng)21ic授權(quán)后發(fā)布,版權(quán)歸原作者所有。

該平臺僅提供信息存儲服務(wù)。

本文僅代表作者個人觀點,不代表本平臺的立場,如有任何疑問,請與我們聯(lián)系,謝謝!

久久综合娱乐中文网| 黑人大吊又操又添| 国产欧美亚洲一区二区三| 亚洲国产成人久久成人52| 使劲操大骚逼av| 操老骚逼三级黄视频| 亚洲av午夜福利精品一区| 国产精品久久久久妇| 亚洲欧美国产原创一区二区三区| 美女被插进去黄色| 精品国产自在现线看| 国产免费好大好硬| 男女真人牲交高潮全过程| 日本亚洲免费不卡| 欧美精品国产一区二区在线观看| 91污在线观看一区二区三区| 三级片成人京东热五月天| 国产天堂网一区二区三区 | 欧美尤物操逼毛茸茸真爽| 久久久久亚洲精品无码系列| 日韩美女一区二区三区香蕉视频| 91video国产一区| 精品一二三四区中文字幕| 亚洲一级片在线播放| 男生操女生无马赛克免费| 久久精精品久久久久噜噜| 男生舔女生下面黄色视频| 久久综合色伊人九色91| 性色av一区二区三区天美传媒四| 插到底啊啊啊视频| 色老头av亚洲三区三区| 国产熟女50岁一区二区| 国产精品视频一区二区三区分享| 国产一级a不收费| 日韩中文字幕一区二区高清| 性色av少妇一区二区三区多人| 大鸡巴射在穴穴里的视频| 啊啊啊操我视频大全| 99久久久国产精品美女| 国产熟女露脸普通话对白| 日本一区二区三区高潮喷吹|