1.大端小端區分
大小端模式就是儲存資料時,資料的高低位怎麼儲存在位址的高低位上。(位指的是bit,乙個char型別資料有8位)
大端模式:資料的高位,存放在位址的低位。(高位存低位,低位存高位)
小端模式:資料的高位,存放在位址的高位。(高位存高位,低位存低位)
我們的pc機一般都是小端模式,個人感覺這也更符合我們的習慣,在地位置的就是低位資料
(1) 位移方法判斷
#include
#define bigorlittle(k) (((k) >> 8) ? (printf("big!\n")):(printf("little!\n")))
int main(int argc, char * argv)
如果1存放在高位,右移8位後1還是存在的;如果1存放在低位,右移8位後1將被移出資料,所以不存,結果為0。
小端模式存放:0000 0001 >> 8 == 0000 0000
大端模式存放:1000 0000 >> 8 == 0000 1000
(2) 資料型別強制轉換
a = 1 ,變成二進位制為:0000 0001.強轉為char時,保留unsigned short a變數的低8位。所以這樣就更加明了了。因為1低位資料,如果char c不為0,表明1存放在低位,即是小端模式;如果char c變數為0,表明1存放在高位,即是大端模式
#include
int main(void)
C語言知識積累
1 性質不同。typedef是關鍵字,而define是預處理指令。2 功能不同。typedef具有型別檢查功能,通常用於增強程式的可讀性和易編寫性 而define只是進行簡單的字元替換,通常用於增強程式的可移植性 嵌入式開發中 降低程式的複雜度和冗餘度。3 作用時間不同。typedef在編譯時處理 ...
C語言時間函式積累(一)
time 用法 time t time time t t 功能 此函式返回從公元1970年1月1日的utc時間從0時0分0秒算起到現在所經過的秒數。如果t並非空指標,此函式也會將返回值存到t指標所指的記憶體。返回值 成功,返回秒數,失敗則返回 time t 1 值,錯誤原因存於errno中。程式例 ...
c 程式設計積累
1.長語句換行 string parastrprojectmode 遇到長語句換行 只要保證 之間的內容在一行就行了 比如 str 這種 不能出現 2.登陸介面,輸入使用者名稱後回車跳到輸密碼文字框 用key press事件,加focus方法。provate void txtusername key...