五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

7.一個(gè)”標(biāo)準(zhǔn)”宏MAX,輸入兩個(gè)參數(shù)并返回較大的一個(gè)(經(jīng)典寫(xiě)法+Linux內(nèi)核寫(xiě)法)

2023-08-23 10:23 作者:踏星赴夢(mèng)  | 我要投稿

1.比較兩個(gè)數(shù)大小返回最大值的經(jīng)典宏寫(xiě)法(注意細(xì)節(jié),要加入括號(hào)):

這種經(jīng)典寫(xiě)法也是有問(wèn)題的:如果傳入的參數(shù)分別是i++和j++,這個(gè)比較大小就會(huì)出錯(cuò),i++和j++在宏展開(kāi)的時(shí)候會(huì)出現(xiàn)在多個(gè)地方,i和j會(huì)自增多次

如:

2.Linux內(nèi)核的實(shí)現(xiàn)方法

在GNU C 語(yǔ)言中,如果知道a和b的類(lèi)型,可以在宏里面定義一個(gè)變量,將a和b分別賦值給變量,然后在進(jìn)行比較:

如果不知道具體的數(shù)據(jù)類(lèi)型,就要使用typeof類(lèi)轉(zhuǎn)換宏,Linux內(nèi)核中的例子如下:

一個(gè)需要注意的問(wèn)題,下述代碼的作用是什么:

(1)首先&_a == &_b 是對(duì)_a和_b取地址進(jìn)行比較,然后得到一個(gè)bool值,在這個(gè)宏之中,大概率是false;

(2)然后對(duì)這個(gè)bool值進(jìn)行強(qiáng)制類(lèi)型轉(zhuǎn)換,也就是對(duì)這個(gè)無(wú)意義的變量進(jìn)行引用操作,消除該變量沒(méi)有被引用的警告;

(3)給出有用的警告:

①兩個(gè)地址相比的bool值沒(méi)有被引用的警告(該警告被(void)object;消除)

②兩個(gè)地址類(lèi)型不一樣,進(jìn)行比較時(shí)Linux會(huì)給出類(lèi)型不一致警告,該警告作為有用警告

(4)要注意,C語(yǔ)言中地址包含兩類(lèi)信息

①物理地址:變量存放在什么地方(位置信息,或者說(shuō)內(nèi)存編號(hào)/純地址)

②地址類(lèi)型:所指向的數(shù)據(jù)的類(lèi)型信息





7.一個(gè)”標(biāo)準(zhǔn)”宏MAX,輸入兩個(gè)參數(shù)并返回較大的一個(gè)(經(jīng)典寫(xiě)法+Linux內(nèi)核寫(xiě)法)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
博爱县| 长武县| 会东县| 十堰市| 博客| 兰溪市| 金堂县| 县级市| 波密县| 华坪县| 青铜峡市| 轮台县| 西吉县| 新余市| 赣榆县| 西丰县| 迁安市| 堆龙德庆县| 甘谷县| 肇东市| 隆林| 岗巴县| 胶南市| 逊克县| 普宁市| 武义县| 徐水县| 罗甸县| 南汇区| 华池县| 高唐县| 霸州市| 乐至县| 准格尔旗| 比如县| 大丰市| 巴彦淖尔市| 仁布县| 甘德县| 珲春市| 柳江县|