搜索
bottom↓
回复: 1

想要入门C语言?还不赶紧看过来!

[复制链接]

出0入234汤圆

发表于 2022-2-22 11:24:03 | 显示全部楼层 |阅读模式
以下文章来源于:公众号:开源电子网,读取更多技术文章,请扫码关注
讨论发帖图.png



C语言入门基础内容篇-基本数据类型




前言

       简单来说,C语言程序可以理解为一等式“程序 = 数据结构 + 算法”。其中,“算法”很容易理解,就是解决问题的思路和步骤,“数据结构”直白理解就是研究数据的存储方式。数据存储只有一个目的,为了方便后期对数据的再利用。

       这里的基本数据类型就有三类:整型、实型与字符型。


整型

       整型,顾名思义,整数类型,也就是没有带小数点的数值类型。整型按占用内存的大小以及数值表示范围分为三种:短整型、标准整型、长整型和长长整型,分别用“short int”、“int”、“long int”和“long long int”表示。

       它们的区别如下表所示:

          1.jpg

       假如C语言只使用一种整数类型,这里就存在很多疑问了,“该用多大内存才适合”,“内存大,数值范围就大,存放小数值是不是存在内存浪费”,“内存小,数值范围小,那大数值又不能存放”。综合考虑,整型就有以上四种子类,根据不同的数值大小,使用不同大小字节的内存空间,既不会浪费内存空间,也可以刚好放下合适的数值。
       大家记住:内存的最小存储单位为字节(Byte)。


       以上的四种整数类型属于有符号的,即把一个整数转换成二进制码,最高位用来标记正负数的符号位。当我们不需要这个符号位,把它也变成数据位,那么就是无符号整型了,就没有表达负数的能力,最终存放的都是正整数。无符号整型的关键字为“unsigned”,前面讲的四种整数类型是属于有符号整型,也有一个关键字“signed”,通常不写出来。注意:默认的整型就是有符号的,假如想使用无符号整型,前面得加关键字“unsigned”。无符号得整数类型对应情况如下表。

          2.jpg

实型


       整数类型是没有小数,那么有小数得类型就称为实型,又叫浮点数类型。实型按照内存大小可分为单精度浮点数类型、双精度浮点数类型和长双精度浮点数类型,关键字分为

    “float”、“double”和“long double”,它们的区别如下表:


         3.jpg

字符型

       1字节大小的整型称为字符型,关键字为“char”,用于字符的表示。简单来说,就是将0~127这个128个正整数作为字符使用,这就是我们常说的ASCII码。
       ASCII码相关的资料可以回看前面写的《什么是ASCII码》推文,这里就不重复讲解。
       很多时候,我们会把字符型当成整型来使用,当我们在前面加了一个关键字“unsigned”时,那么这时候表示的取值范围就为0~255。有符号与无符号字符型情况如下。

          4.jpg

附加
       在生活中,我们很多时候都会给某个东西按一个别名,例如NBA球星等。同样的,在C语言中,也允许设置类型的别名,使用关键字“typedef”来设置,具体操作如下:

       typedef 原类型名 新类型名;
       新类型名跟原类型名表达的意思是一致的,效果一样,那为什么要弄一个新的类型名了?

       好处1:简化一些长类型名
       typedef unsigned int u16;


       好处2:提高程序的通用
       给short类型设置一个别名“DATATYPE”,程序中都是使用DATATYPE。
       typedef short DATATYPE;
       后面发现,short表示的范围不满足现在的需求,需要更大一点,在程序中即修改以下上面的代码即可。
       typedef int DATATYPE;


       好处3:增加可读性
       例如,如果要想知道一个int类型变量的含义,那么使用typedef即可解决。
       Typedef int SCORE;
       代码中,变量类型使用SCORE,就可以知道该变量表示的是分数了。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入33汤圆

发表于 2022-2-22 14:17:42 来自手机 | 显示全部楼层
C语言我只服Sqlite,整个数据库就一个C文件,连.h都可以不要,直接# include "sqlite3. c"
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 04:26

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表