原创 基本数据类型分析

2015-3-4 22:51 1278 16 17 分类: MCU/ 嵌入式 文集: C语言
当问到什么是基本数据类型时?大家肯定会不加思索的说“基本数据类型不就是int char short那几个东西嘛”。其实不然,那么,到底什么是数据类型呢?
 
  1. 数据类型可以理解为固定内存大小的别名。如32位PC机上,char代表了一块1个字节的内存,short代表了一块2个字节的内存,int代表了一块儿4个字节的内存。
  2. 数据类型是创建变量的模子。就像下图中的做月饼的模子一样,模子往面团上一用力,一个月饼就出来了。一个char往内存上一按,一个字节就出来了。
t1_uk3xkfxxxxxxxxx_!!0-item_pic.jpg_310x310.jpg
 
数据类型的本质也可以用下图进行说明:
(zhaoxi.net).jpg
 
变量的本质:
  1. 变量是一段实际连续存储空间的别名。
  2. 程序中通过变量来申请并命名存储空间。
  3. 通过变量的名字可以使用存储空间。
(zhaoxi.net).jpg
 
实验一:类型与变量的关系
#include

int main()
{
    char c = 0;
    short s = 0;
    int i = 0;
   
    printf("%d, %d\n", sizeof(char), sizeof(c));
    printf("%d, %d\n", sizeof(short), sizeof(s));
    printf("%d, %d\n", sizeof(int), sizeof(i));
   
    return 0;
}
输出结果为: 1 1
                    2  2
                    4  4
实验二:自定义类型且创建变量来验证。
#include

typedef char one_BYTE;
typedef short two_BYTE;
typedef int four_BYTE;
int main()
{
     one_BYTE i = 0;
     two_BYTE j = 0;
     four_BYTE k = 0;
     printf("%d   %d\n", sizeof(one_BYTE), sizeof(i));
     printf("%d   %d\n", sizeof(two_BYTE), sizeof(j));
     printf("%d   %d\n", sizeof(four_BYTE), sizeof(k));
     return 0;
}
输出结果为:
                    1 1
                    2  2
                    4  4
PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户593939 2015-3-18 23:29

参考,学习了
相关推荐阅读
潇洒哥 2015-07-08 16:01
位操作符的使用技巧
在C语言编程中,数据的位是可以操作的最小数据单位,理论上可以用“位运算”来完成所有的运算和操作。一般的位操作是用来控制硬件的,或者做数据变换使用,但是,灵活的位操作可以有效地提高程序运行的效...
潇洒哥 2015-04-04 17:39
finish shell分析之底层usart
rt_thread的finsh shell系统不愧是调试的一项利器,它可以除了完成一般shell的功能外,甚至还可以自定义命令。这个对功能单一的嵌入式系统来说是十分可贵的。在此我并不想对finsh...
潇洒哥 2015-04-01 21:29
__main() 和 main()
因为我们通常在BOOTLOADER中都已做好了比较细致的初始化工作,包括代码的搬运,所以我们最好别再调用库函数__main(),因为__main()作为ADS集成好的库函数,会对系统进行初始化设置...
潇洒哥 2015-03-26 22:54
RT-Thread学习之scons篇--解析rtconfig.py文件
rtconfig.py文件,主要用于指定编译器以及安装路径。除此之外,该文件中定义了大量的变量,这些变量包括编译选项,汇编选项,链接选项。   import os # toolchain...
潇洒哥 2015-03-26 22:53
RT-Thread学习之scons篇--SConsruct脚本文件解析
       scons的构建文件名称是统一的都称为SConstruct。其是scons所接受的编译脚本主文件。当然为了方便目录的组织,也允许在各个目录下面存放SConscript, 然后最上面S...
潇洒哥 2015-03-26 22:53
RT-Thread学习之scons篇--SConcript文件解析
SConscript文件是用来指定哪些文件会加入编译。先来分析下BSP主目录下的SConscript文件: import rtconfig Import('RTT_ROOT') fro...
我要评论
1
16
关闭 站长推荐上一条 /3 下一条