定義的類型uint8_t,uint32_t能更明顯的顯示所占字節數。uint8_t表示占1個字節(1 字節=8 bit), uint32_t表示占4個字節((4 字節=32 bit)。
1 #include<stdio.h> 2 void main(void) 3 { 4 typedef unsigned char uint8_t; 5 typedef unsigned int uint32_t; 6 int size_char = sizeof(char); 7 int size_int = sizeof(int); 8 int size_uint8 = sizeof(uint8_t); 9 int size_uint32 = sizeof(uint32_t); 10 printf("the sizeof:\nchar:%d;\nint:%d;\nuint8_t:%d;\nuint32_t:%d;\n", 11 size_char,size_int,size_uint8,size_uint32); 12 }
運行結果:
$ gcc -o an_example an_example.c $ ./an_example the sizeof: char:1; int:4; uint8_t:1; uint32_t:4;
類型轉換
1 #include<stdio.h> 2 void main(void) 3 { 4 typedef int uint8_t; 5 typedef int uint32_t; 6 uint32_t a=300; 7 uint8_t b=2; 8 b=(uint8_t)a; 9 printf("a=%d, b=%d\n",a,b); 10 }
運行結果
a=300, b=300
參考:
[1] 類型轉換 http://www.cnblogs.com/gaoshanxiaolu/p/3601038.html
[2] 類型轉換 http://blog.csdn.net/shenwansangz/article/details/50186495