面試寶典總結(jié)貼
面試寶典 系列(一)
1 形如 !x++ 的計(jì)算順序,若在條件判斷中,則需要首先判斷(!x)的true或者false,然后需要執(zhí)行x++。
2 printf 函數(shù)的執(zhí)行順序是由右至左。代碼如下:















printf()函數(shù)的參數(shù),在printf()函數(shù)讀取時(shí)是從左往右讀取的,然后將讀取到的參數(shù)放到棧里面去。
最后讀取到的就放在棧頂,處理參數(shù)的時(shí)候是從棧頂開始的,所以是從右邊開始處理的.--printf()函數(shù)的特點(diǎn)。
注意點(diǎn):
1.printf()函數(shù)中的計(jì)算是從右向左進(jìn)行的。
2.我們在寫代碼時(shí),盡量避免無確定意義的表達(dá)式出現(xiàn),因?yàn)椴煌木幾g器,可能會采用不同的理解方式。
3 *ptr++ ,*++ptr 之間的區(qū)別。*ptr++ 表示先取值,后++ ,效果同*(ptr++)。 *++ptr 表示ptr的值先自增,然后再取值。
3 float f = 1.0 (int )f 與 (int &) 之間的區(qū)別:
int & 表示,把float在內(nèi)存中的變量的前sizeof(int)個(gè)字節(jié),當(dāng)做int類型的數(shù)字輸出。
4 判斷一個(gè)數(shù)是否是2的N次方(2,4,8,16),不需要使用循環(huán)操作。
注意這些數(shù)都是0010 ,0100 ,1000,10000,A&(A-1) 結(jié)果必然為0,可以使用這種方法判斷。
5 求a , b的最大值
max = ((a + b) + abs(a -b)) / 2
6 交換 a b 的值
a = a ^ b
b = a ^ b
a = a ^ b
posted on 2011-05-11 19:53 kahn 閱讀(512) 評論(0) 編輯 收藏 引用 所屬分類: c++學(xué)習(xí)總結(jié)