【nowcoder】9.5 阿里巴巴2017實習生筆試題(一)
阿新 • • 發佈:2019-02-07
http://www.nowcoder.com/questionTerminal/0cd6af2fd4374df597b49e09302b1a5a
- 使用 inline 關鍵字的函式只是使用者希望它成為行內函數,但編譯器有權忽略這個請求,比如:若此函式體太大,則不會把它作為行內函數展開的
- 標頭檔案中不僅要包含 inline 函式的宣告,而且必須包含定義,且在定義時必須加上 inline 。【關鍵字 inline 必須與函式定義體放在一起才能使函式成為內聯,僅將 inline 放在函式宣告前面不起任何作用】
- 定義在類宣告之中的成員函式將自動地成為行內函數
- 結構體的總大小,必須是內部最大成員的整數倍
不同的資料型別在32位和64位下所佔位元組的區別
32位編譯器:
- char :1個位元組
- char*(即指標變數): 4個位元組(32位的定址空間是2^32, 即32個bit,也就是4個位元組。同理64位編譯器)
- short int : 2個位元組
- int: 4個位元組
- unsigned int : 4個位元組
- float: 4個位元組
- double: 8個位元組
- long: 4個位元組
- long long: 8個位元組
- unsigned long: 4個位元組
64位編譯器:
- char :1個位元組
- char*(即指標變數): 8個位元組
- short int : 2個位元組
- int: 4個位元組
- unsigned int : 4個位元組
- float: 4個位元組
- double: 8個位元組
- long: 8個位元組
- long long: 8個位元組
- unsigned long: 8個位元組
- 類的靜態成員屬於整個類
- 而不是某個物件,可以被類的所有方法訪問,子類當然可以父類靜態成員;
靜態方法屬於整個類,在物件建立之前就已經分配空間,類的非靜態成員要在物件建立後才有記憶體,所有靜態方法只能訪問靜態成員,不能訪問非靜態成員;
靜態成員可以被任一物件修改,修改後的值可以被所有物件共享。