对于很多的新手小白来说,为什么会觉得c语言难学,个人觉得第一步就是在接触的时候,前两章的知识太多,太繁杂,如果一味的死记硬背,很容易造成学习疲劳,然后产生抵抗的心理,这就对我们后来的学习造成阻力。
下面,我们采用一边了解知识点,一边敲代码做实例的方法,让各位读者能够更有体验感 的去学习。
首先,我们来学习c语言的第一章,数据类型及其运算。
一,数据概念的引入(概念,可了解,可不看)
数据是指能够输入到计算机中,并能够被计算机识别和加工处理的符号的集合,是程序处理的对象。
而在C语言中,采用以下这样一种数据机制:把要处理的对象划分为一些类型,每个类型是一个数据值的集合。
由此,在这里引入了数据类型的概念。所谓,数据类型是按被定义变量的性质,表现形式,占据存储空间的多少,构造特点来划分的。比如int在c语言中我们把整数(当然在c语言中我们叫做整形)这一类的数据都划分给int这一类的数据集合里。
二,c语言里的基本数据类型的介绍(和用法示例)
在这里,我个人将他是划分为有符号和无符号(带不带负号)的。
char 字符型, 1个字节,用来存储字符的(这个字符可以是英文字母的大小写,数字、标点符号、空格以及一些特殊字符。)而在在计算机中,这些字符通常对对应的 ASCII 码的形式表示,每个字符对应一个唯一的整数。这些我在后面的文章会更新。
实例:char = 'a';
这里就涉及到,在字符型数据的编写的过程中,要注意将这些字符写在'a',单引号里。
short 短整型,2个字节,通常用于存储短整型数据。
实例:short a =1;
int 整形,4个字节, 用来存储整数
实例: int a = 1;
那么这个时候就有疑问了,为什么int和short都是用来存储整数,那我为什么不用一个名称来存储呢,为啥用两个名字,这是因为二者在计算机中的存储空间是不同的,这就意味着两个存储的数据大小范围的。先简单说一下,比如short是2字节,那么数据在(0~2^16-1)之内的都可以存储,而int是4字节,那么数据在(0~2^32-1)的都可以存储。由此可以看出,int可以比short存储的数据值可以更大。
long 长整形,4字节,用来存储整数
实例:long a=1;
注意:同样的,long的数据存储范围也是(0~2^32-1),它是跟int一样的,所以一般情况下,很少用long。
longlong 长长整形,8字节,用来存储整数
实例:long long a = 1;
float 单精度浮点型, 4字节,用来存储实型,它通常占用32位内存空间,可以表示大约7位有效数字的精度。由于其较小的精度范围,float适用于不需要高精度计算的场景。
float a = 3.141592;
double 双精度浮点型,8字节,用来存储实型,它通常占用64位内存空间,可以表示大约15位有效数字的精度。相较于float,double具有更高的精度和更大的范围,适用于需要更高精度计算的场景。
实例: double b = 3.14159265358979;
long double 长双精度实型,10字节,
实例:long double b = 3.14159265358979;
注意:存储整形数据和实型数据所占字节数也与系统有关,实型数据的有效数字位和数值范围有具体实现的系统有关。
不同与整形数据的存储方式,实型数据按指数形式存储,分为小数部分和指数部分(阶码),如实数N可以表示为N=S*r^j;
例如,实型数据-101.1001B,先将这个转换为规范的指数形式-0.1011001*2^11,对应的指数符号为0,指数数值为11,小数符号为1,小数数值为1011001。指数部分与小数部分各占多少二进制位。
注意:实数数据的存储空间是有限的,所以精度也是有限的,有效位数以外的数字将被舍去,因此会存在误差。
好了,今天的就到这,下面再看。