自学嵌入式第二天 C语言篇1

一、对于前一天vi/vim编辑器操作的补充

        昨天学习了如何用vi/vim编辑器编写代码,知道了其三种模式,分别是命令模式(默认进入的就是该模式)、插入模式、底行模式。今天要补充几个命令模式下能用的快捷操作,这些快捷操作能帮助我们快速且高效的编辑代码。

  1. YY:就是连续按下两次Y键(大小写随意哈),就能复制光标这一行的代码,当然,可以先按下数字,然后再连续按下两次Y键,这样你就复制了从光标那行开始算的像对应的数的行数的代码(切记,光标那行开始算),3YY就是3行,依次类推。
  2. P:有了复制,当然就得有粘贴,按下P键,你就可以把你原先复制的代码粘贴到光标的下一行(这是光标的下一行,跟YY不一样了,要注意),当然你也可以再P键前加数字操作,代表你想粘贴多少份。
  3. DD:跟Windows鼠标操作图形化界面相比,还少一个剪切操作,DD可以起到这个作用,当然要搭配P键使用,如果只DD,不P,那就相当于删除了这行代码,有趣的是,它也可以配合数字使用,跟YY一样也是从光标所在行开始算的行数。
  4. shift + v :这个组合键就是选中光标所在行的内容,跟Windows鼠标操作的选中一模一样哈,不过你要是选多行要配合方向键使用,选中完按一下Y是复制,按一下D是剪切(删除),切记,按一下。
  5. U  /  ctrl + r :删错了代码,复制粘贴错了代码,很着急啊,这个时候U键的作用就起作用了,直接就是撤销上一次的操作,撤销错了怎么办呢,ctrl + r,撤销上一次撤销的操作,所以叫反撤销。

二、C语言基础篇之数据类型篇

        C语言数据类型大致为:基本类型、构造类型、指针类型和空类型。

        今天我们学习的主要是基本类型中的整型、浮点型和字符型。当然学习数据类型前,我们要知道程序中的数据分为常量和变量。常量,就是程序还在运行的过程中,不能被改变的量,与之相反,能改变的量叫变量,注意,一定指的是程序还在运行的时候。下面来了解整型、浮点型和字符型。

  • 整型:

        1.整型常量的表示方法:

                1122        十进制数1122;

                0666        八进制数666;

                0xffff        十六进制数ffff。

        2.整型变量的表示

                int a;表示定义了一个名为a的整型变量,大小为4个字节。

                short a;表示定义了一个名为a的短整型变量,大小为2个字节。

                long a;表示定义了一个名为a的长整型变量,大小为8个字节。

                long long a;表示定义了一个名为a的long long整型变量,大小为8个字节。

        3.整型变量的存储:

                变量之所以能被修改,就是因为再定义变量时,如int a为例,计算机就划出一块地盘出来,给了名字叫做a的这个变量,本质来说,a,只是为了标识一下这个地盘,这个地盘多大还取决于它的数据类型是什么,既然是地盘,往里装什么数字,它就是什么数字。

                对于整数,计算机存储的数据都是它的补码,只是对于正整数而言,原码,反码,补码都是一样的,负数则不同,它得先求反码再求补码。

                负数求反码规则:做高位为符号位,因为是负数,所以为1,符号位不变,其余位按位取反,0变1,1变0,就能得到它的反码。

                补码则再反码的基础上加一。

                如int类型,计算机采用小端存储方式,高位数据一定是放到地址编号高的地方,然后再依次往低地址放。简记为高高低低。

        4.这几个类型的取值范围:(一个字节是八位二进制数表示)

                int        -2^31~2^31-1;        unsigned int        0~2^32-1;

                short        -32768~32767;        unsigned short        0~65535;

                long        -2^63~2^63-1;        unsigned long        0~2^64-1;

                long long 大小同 long;

        5.整数的溢出:

                unsigned short i = 65535;

                i = i + 1;

                printf("i = %hd",i);

                        此时的i在数学角度上应该为65536,但是无符号短整型最大为65535,再+1,要向前进位,本来为 1111 1111 1111 1111 ,进位后为0001 0000 0000 0000 0000 ,由于只能存下后16为,i的值又变成了0,这个现象就叫数据溢出,最大值再加一,变成最小值,称为向上溢出,最小值减一,变成最大值,称为向下溢出。存储和读取数据是两个过程,没有必然联系,所以读只读后16位,但内存中高位还在。

  • 浮点型

        1.常量表示:12.32;1.232e1

        2.变量表示:float        double        long double

        3.变量大小:float(4个字节)        double(8个字节)        long double(16个字节)

        4.浮点数的存储,主要有以下步骤:

                step1:十进制小数化为二进制小数表示,整数部分除2取余,小数部分乘2取整。

                step2:将上面得到的二进制小数用科学计数法表示,记住底数是2。

                step3:参照IEEE754标准填入数字,float类型最高位为符号位,然后接着8位指数位,

要加127(规定),剩下23位填小数部分,不够的在后面补0;

                ps:double的指数位有11位,偏移量(就是规定要加上的数)为1023,52位尾数位。

        5.浮点数的比较:

                浮点数要比较的话精度要求要一致(就是float只能和float比,double和double比),常量默认为double类型。

  • 字符型

        字符型只有一个字节,char i = 'a'; i 里面存的就是a字符的ASCII码,可以将char类型理解成int类型,只是这个char的取值范围比较小。   

三、今日总结

        今天学习了基本数据类型中的整型,浮点型,字符型三种数据类型,比以往学C语言时更深层次了解了这些数据类型存储的方式方法,了解其中储存原理,能更好的理解为什么C语言中一定要有数据分类。 

           

  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值