初识C语言(2)数据类型

发布于:2022-10-14 ⋅ 阅读:(574) ⋅ 点赞:(0)

第一个C语言程序

我们先把如下代码写入编译器中(我采用的是VS2013,编译器和我不一样也没事)。

#include <stdio.h>
int main()
{
    printf("hello world\n");
    return 0;
}

简单介绍一下,main函数是程序的入口,一个工程中只有一个且必须有一个main函数。因为如果没有mian函数程序就没了入口,无法正常运行。如果有两个main函数,程序就不知道哪个是入口,会出现故障。

#include <stdio.h>是头文件,就是我们需要使用哪个函数时候必须引用的文件。此时我们要使用printf这个函数,而这个函数位于stdio.h这个头文件下。

return 0;表示函数已经结束

printf()(链接中有关于printf的简单使用)中没有打"",或者是打成了中文的“”。注意,我们写程序的时候,输入法一定一定要切换成英文状态!!!

注意,新手易犯错误

1,main写成mian。报错如下,注意,出现报错的时候,从第一个看起,后面的很多报错可能只是因为前面的一两个错误导致。现在我们就只是把main写成mian,就出现两个报错。

2,不打“;”。分号“;”表示一条语句结束

数据类型

计算机最小单位bit

首先我们需要知道计算机的最小单位——bit。我们都知道计算机是二进制的,全部由0和1组合而成。而一个bit表是一个0或者1。而4个bit就表示1个BYTE(字节)。1024BYTE(字节)=1KB; 1024KB=1MB; 1024MB=1GB; 1024GB=1TB; 1024TB=1PB; 1024PB=1EB; 1024EB=1ZB; 1024ZB=1YB。

数据类型大小

现在我们已经知道了bit,字节的概念之后,抛出一下概念。

char        //字符数据类型
short       //短整型
int         //整形
long        //长整型
long long   //更长的整形
float       //单精度浮点数
double      //双精度浮点数

一个char表示一个字节的数据,short占两个字节。int四个,long四个,long long八个,float四个,double四个。

但是我们需要注意,这里的是在32位的系统下才正确。如果是8位或者64位的系统下部分类型所占字节不同。比如8位的系统下int只有两个字节。

这个时候有人就会有疑惑,int,long,float都是四个字节。有什么区别呢?C语言标准是这样规定的:int最少16位(2字节),long不能比int短,short不能比int长。早期的操作系统是16位系统,int用2字节表示,long用4字节表示。而float和int与long不同,float是浮点型数据(就是有小数点的数据,比如3.14,5.46这种),int和long则是整形数据(只能是整数,比如3,5,6这种)。

如何判断不同呢系统下数据类型大小

这个时候我们可以用一个库函数sizeof()了。你在sizeof()中写入数据类型,然后利用printf打印出来即可。如下

#include <stdio.h>
int main()
{
    printf("%d\n", sizeof(char));
    printf("%d\n", sizeof(short));
    printf("%d\n", sizeof(int));
    printf("%d\n", sizeof(long));
    printf("%d\n", sizeof(long long));
    printf("%d\n", sizeof(float));
    printf("%d\n", sizeof(double));
    printf("%d\n", sizeof(long double));
    return 0;
}

 结果

为什么需要这些数据类型

我们需要知道,我们的所有数据其实是存放在一个特定的区域的。而计算机一开始不知道这个数据需要多大的区域。像一个十进制数字8转换成二进制就算1000,需要一个字节存储。而十进制128转换成二进制就算1000 0000 需要两个字节。如果这个变量从8变成128,这个时候我们就需要预留给计算机足够的内存存放这个变量了。

如果不能理解,打个比方。你是一个老板,工厂里面有一批货需要放在一个100平方米的地方存放。但是因为销售的产品不可能一时间都卖出去,有可能会造成积压,这个时候就需要200平方米的仓库了。可是你建房子也不是说建好就建好的,这个时候,老板就需要考虑,我建这个仓库一开始就需要大约多大的空间呢?空间太小,物品积压,难道都丢了?空间太大,增加成本没必要。所以在仓库建立之初就需要规划好。而这个数据类型可以理解为规划仓库大小。

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到