尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

数据类型看不懂?变量常量不会分?一期博客教你不再用错!零基础也能看懂!

数据类型看不懂?变量常量不会分?一期博客教你不再用错!零基础也能看懂! 数据类型看不懂变量常量不会分一期博客教你不再用错大家好我是阿米emoji碰到简单的数据类型没有问题但遇见不常用的就抓瞎常量变量五花八门但遇到就傻傻分不清楚一期博客教你厘清一、数据类型c语言中的数据类型就这几种此处感谢比特供图1.1 字符型c语言中使用char表示字符类型。c语言中字符是用单引号括起来的比如‘x’、‘a’这些字符的类型就是char长度为1字节。chara;//使用char创建字符变量1.2 整型c语言中使用int表示整型类型。c语言中100、20这些整数的类型就是int长度为4字节。intnum;//使用int创建整型变量1.3 浮点型c语言中3.14、5.5这些小数的类型默认为double类型长度为8字节3.14f这种写法表示float类型长度为4字节。float//单精度浮点型double//双精度浮点型floatnum1;//使用float创建变量doublenum2;//使用double创建变量1.4 布尔类型布尔类型是专门判断条件真假的数据类型取值为true/false。_Boolflagtrue;if(flag)printf(I like C\n);二、类型修饰符前面介绍的基本数据类型已经能解决大部分问题但在开发过程中还需要更精细的数据表示能力在c语言中我们引入类型修饰符解决此类问题//和内存长度有关的shortlong//和符号有关的signedunsigned我们为什么要引入类型修饰符就像人类发明了汽车却无法满足所有人的需求于是又出现了跑车、SUV、越野车…类型修饰符同理我们不妨来看看下面几个典型修饰符。2.1 short和longshort和long是和内存长度有关的两个类型修饰符。int//标准的整型//修饰整型short[int]//短整型long[int]//长整型longlong[int]//更长的整型注意几点1.short和long是用来修饰整型类型的。2.常规的整型类型是int长度为4字节而short int为2字节。3.c语言规定long int的长度是大于等于int的长度的。以下附一张各个数据类型的字节数此处依旧感谢比特供图注long和long double类型的长度是和平台采用的数据模型有关的。2.2 signed和unsignedsigned和unsigned是符号相关的两个类型修饰符专门修饰字符型和整型类型charint的。signed表示一个类型带有正负号可以是正数、负数或0unsigned表示一个类型不带正负号只能是0或正整数。注signed一般都可以不写但char除外有可能是signed char有可能是unsigned char二者有区别。2.3 sizeof求字节长度忘了某个数据类型的字节数别急sizeof来帮忙。sizeoftypesizeof的计算结果是size-t类型打印时应用%zu占位符请看代码示例printf(char: %zu\n,sizeof(char));printf(int: %zu\n,sizeof(int));三、变量和常量数据类型最主要的功能就是创建变量和常量,变量的值可以改变而常量的值一旦修改就不能变。3.1 变量创建变量的语法形式如下data_type name;变量命名的一般规则1.只能由字母包括大小写、数字和下划线(_)组成。2.不能以数字开头。3.变量名不能使用关键字。示例intage;doubleweight;而变量在创建的时候给一个初始值就叫变量的初始化。intage18;doubleweight61.0;3.2 变量的分类变量分为全局变量和局部变量。全局变量全局变量就类似街上的共享单车大家都可以用。#includestdio.hintglobalVar100;//全局变量voidshow(){printf(全局变量值%d\n,globalVar);}intmain(){show();globalVar200;//直接修改全局变量printf(修改后%d\n,globalVar);return0;注1.如果没有显式初始化系统会自动初始化为0。2.使用注意过多使用全局变量会导致模块间耦合度高调试困难建议谨慎使用。局部变量在大括号内部定义的变量就是局部变量局部变量就像你们家的自行车只有你们家的人才可以使用它。#includestdio.hvoidfunc(){intlocalVar10;//局部变量printf(%d\n,localVar);}intmain(){//printf(%d\n,localVar);//错误main函数无法访问func中的localVarreturn0;}注1.局部变量最好初始化如果没有初始化其值就是垃圾值不确定的随机数。2.当局部变量与全局变量同名时优先使用局部变量。3.3 常量常量分为字面常量、符号常量、const常量和枚举常量。枚举常量我们先不讲先介绍三种常量字面常量包括字符常量‘a’、’x’、整型常量123、456、后缀100U【表示unsigned】、123LL【表示long long】等。符号常量#defineM100#definePI3.14159intmain(){intMaxM;printf(M %d\n,M);printf(Max %d\n,Max);printf(pi %lf\n,PI);return0;}注符号常量通常名字都是大写的。const修饰的常变量使用const修饰的变量其值在初始化后就不可修改但本质上仍是变量只是编译器禁止赋值操作。constdoublee2.7;//浮点常变量constintdays_in_week7;days_in_week8;//错误不能修改const变量好了以上就是我们这篇博客的主要内容希望对您有所帮助也欢迎批评指正以及讨论我是阿米emoji我们下期再见
返回列表