《(3.2)--变量、常量、数据类型.ppt》由会员分享,可在线阅读,更多相关《(3.2)--变量、常量、数据类型.ppt(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、PPT模板下载: 量整型常量.1000,12345,0,-3452实型常量.小数形式小数形式123.456;指数形式指数形式12.34e3,-34.8E-233字符常量.普通字符普通字符a,Z,#;转义字符转义字符n,012,h1B4字符串常量.“123”,”boy”5符号常量.#define PI 3.1416 /注意行末没有分号1转义字符变 量变量代表一个有名字的、具有特定属性的一个存储单元。变量用来存放数据,也就是存放变量的值。在程序运行期间,变量的值是可以改变的。变量必须先定义,后使用。a3变量名变量值存储单元标 识 符标识符就是一个对象的名字。用于标识变量、符号常量、函数、数组、类型
2、等标识符只能由字母、数字和下划线3种字符组成,且第1个字符必须为字母或下划线注意变量名中区分大小写字母不能使用关键字作为变量名变量的名字应该尽量反映变量在程序中的作用与含义C语言中的关键字Autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile数据类型所谓类型,就是对数据分配存储单元的安排,包括存储单元的长度(占多少字节)
3、以及数据的存储形式。不同的类型分配不同的长度和存储形式。数据类型基本类型整型类型基本整型 int短整型 short int长整型 long int*双长整型 long long int字符型 char*布尔型 bool浮点类型单精度浮点型 float双精度浮点型 double复数浮点型 float_complex,double_complex,long long _complex枚举类型 enum空类型 void派生类型指针类型*数组类型 结构体类型 union函数类型计算机中带符号整型数的表示:补码0000000000000101正整数的补码就是此数的二进制形式,5的补码:负整数的补码是将此
4、数绝对值的二进制形式;除最高位符号位外其他数取反;加1。-5的补码:100000000000010111111111111110100111111111111011整型数据整型数据类型整型数据类型缺省形式缺省形式的的整型整型数据类型数据类型字节数字节数取值范围取值范围signed intint4-21474836482147483647(-231231-1)unsigned intUnsigned404294967295(0232-1)signed short intshort2-3276832767(-215215-1)unsigned short intunsigned short2065
5、535(0216-1)signed long intlong4-21474836482147483647(-231231-1)unsigned long intunsigned long404294967295(0232-1)signed long long intlong long8-92233720368547758089223372036854775807(-263263-1)unsigned long long intunsigned long long8018446744073709551615(0264-1)说明:C标准没有具体规定各种类型数据所占用存储单元的长度,只要求sizeo
6、f(short)sizeof(int)sizeof(long)sizeof(long long),具体由各编译系统自行决定的。sizeof是测量类型或变量长度的运算符。整型数据(1)只有整型(包括字符型)数据可以加signed或unsigned修饰符,实型数据不能加。(2)对无符号整型数据用“%u”格式输出。%u表示用无符号十进制数的格式输出。如:在将一个变量定义为无符号整型后,不应向它赋予一个负值,否则会得到错误的结果。如:unsigned short price=50;/定义price为无符号短整型变量printf(%un,price);/指定用无符号十进制数的格式输出unsigned s
7、hort price=-1;/不能把一个负整数存储在无符号变量中printf(%dn,price);字符型数据ASCII字符集包括:字母:大写英文字母AZ,小写英文字母az数字:09专门符号:29个,包括!#&()*+,-./:;?_|空格符:空格、水平制表符(tab)、垂直制表符、换行、换页(form feed)不能显示的字符:空(null)字符(以0表示)、警告(以a表示)、退格(以b表示)、回车(以r表示)等ASCII码表注意字符1和整数1是不同的概念。字符1只是代表一个形状为1的符号,在需要时按原样输出,在内存中以ASCII码形式存储,占1个字节。而整数1是以整数存储方式(二进制补码方
8、式)存储的,占2个或4个字节。整数运算1+1等于整数2,而字符1+1并不等于整数2或字符2。0 0 1 1 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1字符变量字符变量是用类型符char定义字符变量。char c=?;/定义c为字符型变量并使初值为字符?。?的ASCII代码是63,系统把整数63赋给变量c。printf(%d%cn,c,c);/用“%d”格式输出十进制整数63,用“%c”格式输出字符?浮点型数据3.14159=3.14159*1 00=0.314159*1 01=314.159*1 0-2由于小数点位置可以浮动,所以实数的指数形式称为浮点数浮点数
9、。浮点数类型包括float(单精度浮点型)、double(双精度浮点型)、long double(长双精度浮点型)。+.3 1 4 1 5 9 1数符小数部分 指数 +.314159 1013.14159注意由于用二进制形式表示一个实数以及存储单元的长度是有限的,因此不可能得到完全精确的值,只能存储成有限的精确度。小数部分占的位(bit)数愈多,数的有效数字愈多,精度也就愈高。指数部分占的位数愈多,则能表示的数值范围愈大。实型数据类型型字字节数数有效数字有效数字数数值范范围(绝对值)float460以 及 1.2*1 0-38 3.4*1 03 8double8150以 及 2.3*10-30
10、 81.7*1030 8long double8150以 及 2.3*10-30 81.7*1030 816190以 及 3.4*10-4 9321.1*104932常量的类型从常量的表示形式即可以判定其类型。不带小数点的数值是整型常量,但应注意其有效范围。在一个整数的末尾加大写字母L或小写字母l,表示它是长整型(long int)。凡以小数形式或指数形式出现的实数均是浮点型常量,在内存中都以指数形式存储。C编译系统把浮点型常量都按双精度处理,分配8个字节。n字符常量23整型常量3.14159浮点型常量常量、变量与类型float a=3.14159;/3.14159为双精度浮点常量,分配8个字
11、节;a为float变量,分配4个字节编译时系统会发出警告(warning:truncation from const double tofloat),提醒用户注意这种转换可能损失精度一般不影响结果的正确性,但会影响结果的精度。可以在常量的末尾加专用字符,强制指定常量的类型:float a=3.14159f;/把此3.14159按单精度浮点常量处理,编译时不出现“警告”long double a=1.23L;/把此1.23作为long double型处理类型是变量的一个重要的属性。变量是具体存在的实体,占用存储单元,可以存放数据。而类型是变量的共性,是抽象的,不占用存储单元,不能用来存放数据。int a;a=3;/正确。对整型变量a赋值 int=3;/错误。不能对类型赋值