常量与变量
常量:在程序运行过程中不能被改变的量
变量:在程序运行过程中能被改变的量
例如:
int i;
i=123456;
i为变量,在程序运行过程中,其值被改变为123456;而123456为常量,在程序运行过程中不能被改变。
使用常量给变量赋值时,在计算机RAM中使用小端字节序,即高地址放高位,低地址放低位
在51单片机中使用的大端字节序,和小端字节序相反
整型
一、整型常量
分为十进制整数,十六进制整数(0x开头),八进制整数(0开头)
二、整型变量
整型: int;unsigned int;字节长度:4 比特:32 取值范围:-2^31~2^31-1(signed);0~2^32-1(unsigned)
短整型: short;unsigned short;字节长度:2 比特:16 取值范围:-2^15~2^15-1(s);0~2^16-1(us)
长整型: long;unsigned long;字节长度:8 比特:64 取值范围:-2^31~2^31-1(s);0~2^32-1(us)
长长整型: long long;unsigned long long;字节长度:8 比特:64 取值范围:-2^63~2^63-1(s); 0~2^64-1(us)
unsigned指无符号;有符号时第一位表示数据的正负,0为正数,1为负数
当数据为变量的最大值,此时再+1,就会发生整型溢出,变为最小值
给变量赋值时,注意数据类型的匹配
有符号整型输出为%d;无符号整型输出为%u,有符号长整型为%ld,无符号长整型为%ul
浮点型
一、浮点常量
小数
二、浮点变量
单精度:float;unsigned float; 4字节32位
双精度:double float; unsigned double float; 8字节64位
三、计算
使用科学计数法表示,表示为**e^**,
例如单精度浮点变量中,有32位,其中符号位占第一位,阶码占八位,尾数占剩下的23位
表示为:符号位+阶码+尾数
如果数据长度超过单精度所能提供的有效数字,超出外的部分会被舍去,从而产生误差
例如:
float i;
i=0.9;
此时会造成误差,最终的i并不等于0.9,因为计算机将0.9使用双精度存储,而float为单精度
1.可将float改为double float
2.将0.9改为0.9f,此时0.9为单精度
长度运算符:sizeof() 计算括号内数据的字节长度
字符型
字符常量:用' '括起来的字符,如'a','b'
常用转义字符:
字符变量:
用来储存字符常量,且只能存放一个字符
例请编译程序将“China ”译成密码,用原来字母后面的第4个字母代替原来的字母。例如:字母A后面的第四个字母是E,用E代替A。因此"China"应译为"Glmre"。请编一道程序,用赋初值的方法使c1,c2,c3,c4,c5这5个变量分别为'C','h','i','n','a',经过运算,使c1,c2,c3,c4,c5分别为'G','l','m','r','e',然后输出。