1
右值左值
c/c++語言中可以放在賦值符號左邊的變數,左值表示儲存在計算機記憶體的物件,左值相當於位址值。右值:當乙個符號或者常量放在操作符右邊的時候,計算機就讀取他們的「右值」,也就是其代表的真實值,右值相當於資料值
左值和右值是相對於賦值表示式而言的。左值是能出現在賦值表示式左邊的表示式。左值表示式可以分為可讀寫的左值和唯讀左值。右值是可以出現在賦值表示式右邊的表示式,他可以是不佔據記憶體空間的臨時量或字面量,可以使(還是《是》)不具有寫入權的空間實體。
2big endian 和 little endian
談到位元組序的問題,必然牽涉到兩大cpu派系。那就是motorola的powerpc系列cpu和intel的x86系列cpu。powerpc系列採用big endian方式儲存資料,而x86系列則採用little endian方式儲存資料。那麼究竟什麼是big endian,什麼又是little endian呢?
其實big endian是指低位址存放最高有效位元組(msb),而little endian則是低位址存放最低有效位元組(lsb)。
比如數字0x12345678在兩種不同位元組序cpu中的儲存順序如下所示: bigendian 低位址 高位址 -------------
| 12 | 34 | 56 | 78 |
littleendian
低位址 高位址
| 78 | 56 | 34 | 12 |
3空指標
空指標是乙個特殊的指標值,也是唯一乙個對任何指標型別都合法的指標值。指標變數具有空指標值,表示它當時處於閒置狀態,沒有指向有意義的東西。空指標用0表示,c語言保證這個值不會是任何物件的位址。給指標值賦零則使它不再指向任何有意義的東西。為了提高程式的可讀性,標準庫定義了乙個與0等價的符號常量null. 程式裡可以寫 p = 0; 或者 p = null; 兩種寫法都把p置為空指標值。相對而言,前一種寫法更容易使讀程式的人意識到這裡是乙個指標賦值4執行緒
執行緒(thread, 台灣稱「執行緒」)是程序中某個單一順序的控制流。也被稱為輕量程序(lightweight processes)。電腦科學術語,指執行中的程式的排程單位。
5預處理
預處理一般是指在程式源**被翻譯為目標**的過程中,生成二進位制**之前的過程。典型地,由預處理器(preprocessor) 對程式源**文字進行處理,得到的結果再由編譯器核心進一步編譯。這個過程並不對程式的源**進行解析,但它把源**分割或處理成為特定的單位——(用c/c++的術語來說是)預處理記號(preprocessing token)用來支援語言特性(如c/c++的巨集呼叫)。
6設計模式
7macro使用
8malloc
malloc的全稱是memory allocation,中文叫動態記憶體分配,當無法知道記憶體具體位置的時候,想要繫結真正的記憶體空間,就需要用到動態的分配記憶體。原型為extern void *malloc(unsigned int num_bytes)。
9free函式
釋放malloc()函式給指標變數分配的記憶體空間的函式
使用後該指標變數一定要重新指向null,防止野指標出現,有效 規避誤操作。
5年前的筆試題目
2.乙個6位數乘以乙個3位數,得到乙個結果。但不清楚6位數中的兩個數字是什麼,而且結果中有一位數字也不清楚,請您程式設計,找出問號代表的數字,答案可能有多個。12?56?x 123 154?4987 3.在1到1,000,000的整數中,找出同時符合以下條件的數 a.必須是質數 b.該數字各位數字之...
百度2014移動研發筆試題目
1.簡述計算機的儲存系統分為哪幾個層次,為什麼這樣的分層能夠提高程式的執行效率。2.浮點數在計算中如何表示,如何對浮點數判等。3.簡述tcp與udp協議的差別,兩者與http的關係。並列舉http的方法,以及常見的返回狀態碼。二.演算法與程式設計 1.設計乙個反轉字串的函式 char reverse...
2023年華為校招機試題目
2014年華為校招機試題目 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複 字母進行壓縮,並輸出壓縮後的字串。壓縮規則 1.僅壓縮重複出現的字元。比如字串 abcbc 由於無 連續重複字元,壓縮後的字串還是 abcabc 2.壓縮欄位的格式為 字元重複的...