int來定義整數(int 是 integer 的簡寫),這在《大話C語言變量和數據類型》中已經進行了詳細講解。
short int a = 10;
short int b, c = 99;
long int m = 102023;
long int n, p = 562131;
short a = 10;
short b, c = 99;
long m = 102023;
long n, p = 562131;
short <= int <= long
這就意味著,short 並不一定真的”短“,long 也並不一定真的”長“,它們有可能和 int 占用相同的字節數。
#include <stdio.h>
int main()
{
short a = 10;
int b = 100;
long c = 1000;
char d = 'X';
int a_length = sizeof a;
int b_length = sizeof(int);
printf("a=%d, b=%d, c=%d, d=%d\n", a_length, b_length, sizeof(c), sizeof(char));
return 0;
}
在Win7下的運行結果為:( ),如果跟的是數據類型,就必須帶上( )。( ),後面會詳細講解。0開頭(注意是數字 0,不是字母 o),例如:
//合法的八進制數 int a = 015; //十進制為 13 int b = -0101; //十進制為 -65 int c = 0177777; //十進制為 65535 //非法的八進制 int m = 256; //無前綴 0,相當於十進制 int n = 03A2; //A不是有效數字
0x或0X(不區分大小寫)開頭,例如:
//合法的十六進制 int a = 0X2A; //十進制為 42 int b = -0XA0; //十進制為 -160 int c = 0xffff; //十進制為 65535 //非法的十六進制 int m = 5A; //無前綴 0X int n = 0X3H; //H不是有效數字
%d,輸出 short 使用%hd,輸出 long 使用%ld。請看下面的例子:
#include <stdio.h>
int main()
{
short a = 100;
int b = 010;
long c = 0XFFFF;
printf("a=%hd, b=%d, c=%ld\n", a, b, c);
return 0;
}
運行結果:%d,輸出八進制使用%o(注意是字母 o,不是數字 0),輸出十六進制使用%x或%X。如果希望帶上前綴,可以加#,例如 %#d、%#o、%#x、%#X。請看下面的例子:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a = 100, b = 0270, c = 0X2F;
printf("a(d)=%d, d(#d)=%#d\n", a, a);
printf("a(o)=%o, d(#o)=%#o\n", b, b);
printf("c(x)=%x, c(#x)=%#x, c(X)=%X, c(#X)=%#X\n", c, c, c, c);
system("pause");
return 0;
}
運行結果: