色综合亚洲精品激情狠狠,国产欧美日韩各类一区二区,亚洲国产综合久久久精品久久91,欧美成人天天综合在线

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

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

轉移自:嵌入式Hodgepodge交換a和b的值是學習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)容。

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

由于變量的范圍無效。

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

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

因此,您知道如何在不使用任何其他中間變量的情況下交換a和b的值嗎?方法1:使用算術方法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具有潛力當形式參數(shù)的類型更改為無符號16位時,如果a和b的值較大,則該值a + b的值可能超出16位整數(shù)可以表示的范圍,從而導致編程操作錯誤。

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

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

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

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

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

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

該平臺僅提供信息存儲服務。

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

精品麻豆国产免费一区二区三区| 青娱乐欧美性爱视频| 国产精品538一区二区在线| 国产精品国产精黄 | 精品一区二区久久久久无码| 操女人真人大骚逼| 97青青草免费在线观看| 八插8插黄色视频| 亚洲午夜av一区二区三区| 男人的天堂久久久久久久| 咪咪爱一级特黄大片| 777米奇在线视频无码| 大鸡吧天天草黑逼| 美女被插进去黄色| 亚洲 自拍 欧美 一区| 成人精品视频区一区二区三| 亚洲天堂成年人在线视频| 中文字幕在线观视频| 无码人妻丰满熟妇区精品| 少妇无码一区二区二三区| —级v免费大片欧美| 老熟女被大鸡巴干| 亚洲综合网伊人中文| 欧美丰满大屁股女人的逼被操视频| 熟女大屁股亚洲一区| 日本福利一区二区视频| 国产乱子伦视频一区二区三区| 裸体午夜一级视频| 三级成人国产高清视频| 91孕妇精品一区二区三区| 少妇毛片一区二区三区免费视频| 尤物AV无码国产在线看| 美女麻豆颜色光屁股眼子| 国产亚洲一区二区手机在线观看| 国产尤物蜜臀AV| 日韩一区二区三区夜色视频| 插女人下面高潮视频| 大肉棒操小骚穴视频| 白虎嫩穴抠逼高潮| 国产一区二区三区在线观| 亚洲精品自拍偷拍|