ARM 处理器支持6种数据类型;8位有符号和无符号字节。 (char, unsigned char)16位有符号和无符号半字,它们以2字节的边界对准。(short int, unsigned short int)32位有符号和无符号字,它们以4字节的边界对准。(int, unsigned int)ARM指令全是以32bit的字并且必须是字对准的。Thumb指令是半字而且必以两字节的边界对准的。
- #include <stdio.h>
- #include <stdlib.h>
-
- void main()
- {
- printf("sizeof(char) = %d
", sizeof(char));
- printf("sizeof(short) = %d
", sizeof(short));
- printf("sizeof(int) = %d
", sizeof(int));
- printf("sizeof(long) = %d
", sizeof(long));
- printf("sizeof(float) = %d
", sizeof(float));
- printf("sizeof(double) = %d
", sizeof(double));
运行结果:
- [root@www.linuxidc.com width]# arm-linux-gcc arm-width.c -o arm-width
- [root@www.linuxidc.com width]# ./arm-width
- sizeof(char) = 1
- sizeof(short) = 2
- sizeof(int) = 4
- sizeof(long) = 4
- sizeof(float) = 4
- sizeof(double) = 8
- [root@www.linuxidc.com width]#