C語言 整數

2021-09-24 08:08:40 字數 1129 閱讀 2797

1、整數型別:

long int;

long;

short int;

short; ubsigned int; unsigned; unsigned long;unsigned short;long long;

short型別可能比int型別占用的空間少,long型別可能比int型別占用的空間多。c語言只是規定short型別必能比int占用空間多,long不能比int占用空間少

各種型別的int占用的空間不一定時固定的(因為機器的不同而不同),c標準只對基本型別規定了最小大小

在我當前的電腦上(64位機)int的範圍【-2147483648,2147483647】,unsigned int 的範圍【0,4294967295】,整數溢位後的效果是什麼呢?

#includeint main(void)

結果圖下圖:

2、列印short、long、long long和unsigned型別

列印unsigned int使用%u轉換說明、long使用%ld,如果電腦中的long和int是同樣的位數可以直接都用%d列印但是移植到其他不同的機器上的時候會出錯。列印八進位制和十六進製制也是直接在o和x前面加上%。

%hd是指short型別的整數(十進位制),h和l字首都可以和u一起使用(h,l在前,u在後),long long型別用%lld和%llu分別表示有符號和無符號。

**    

#include

int main(void)

結果如下:

結果可能都不會相同(隨機器的不同而不同)。

其中需要解釋的是第二行的輸出,不管使用hd環視d輸出的都是200,因為電腦中在給函式傳遞引數的時候都會轉換成int來傳遞,所以輸出的都是一樣的。最後一行的輸出有的電腦會輸出「verybig = 1234567890864 and not 1942899938」我的電腦中long的位數應該是64位的足夠顯示這個例子中正確的數字,但是如果是32位的就會顯示錯誤的數字。

C語言,念整數

題目內容 你的程式要讀入乙個整數,範圍是 100000,100000 然後,用漢語拼音將這個整數的每一位輸出出來。如輸入1234,則輸出 yi er san si 注意,每個字的拼音之間有乙個空格,但是最後的字後面沒有空格。當遇到負數時,在輸出的開頭加上 fu 如 2341輸出為 fu er san...

c語言 念整數

念整數 5分 題目內容 你的程式要讀入乙個整數,範圍是 100000,100000 然後,用漢語拼音將這個整數的每一位輸出出來。如輸入1234,則輸出 yi er san si 注意,每個字的拼音之間有乙個空格,但是最後的字後面沒有空格。當遇到負數時,在輸出的開頭加上 fu 如 2341輸出為 fu...

C語言 念整數

c語言 念整數 你的程式要讀入乙個整數,範圍是 100000,100000 然後,用漢語拼音將這個整數的每一位輸出出來。如輸入1234,則輸出 yi er san si 注意,每個字的拼音之間有乙個空格,但是最後的字後面沒有空格。當遇到負數時,在輸出的開頭加上 fu 如 2341輸出為 fu er ...