一、变量和数据类型
1,数据类型
char short int long fioat double bool struct union enum
unsigned char
unsigned short
unsigned int
unsigned long
2,详细分析各种数据类型
(1)变量
命名规则:只能以数字、字母、下划线组成,并且首字母不能是数字,不能和关键字重名。
(2)变量的定义
单一变量定义 int a=9;
定义多个变量 int a=9,b=10; 定义多个变量,用逗号隔开
错误:int a=b=9;//b未定义
注意: 变量必须要先定义后使用,即使用前必须先定义。
(3)各种类型的变量
char类型 字符型 占1个字节
两种属性:1)表示字符 //用char类型的变量存储,用%c打印。
2) 表示整形 //用int 类型变量存储,其值为字符对应的ASCII码值,用%d打印。
字符的ASCII值
'a' --->97
'A' --->65
'0' --->48
注意数据越界问题:一个字节占8位,不考虑符号位的情况下,为0-255。
计算机处理数据越界:把高位舍弃。
拓展:(1)进制之间的转换
公式
一个八进制位等于三个二进制位
一个十六进制位等于四个二进制位
位数不够,高位补零。
(2)计算机存储正数和负数
正数:在计算机中采用原码存储,最高位用0表示符号位
负数:在计算机中采用补码存储,最高位用1表示符号位
补码:原码取反加一
=========================================================================
与整数有关的类型
short 2字节
int 4字节
long 32位系统4字节,64位系统8字节
long long 长长整形,long 的两倍
=========================================================================
浮点型
float 单精度浮点 4字节
double 双精度浮点 8字节
浮点数在计算机中也是用二进制存储
某些浮点数在计算机中是无法精准表示,因为计算机表示小数
float a=12.57;
if(a==12.57) //12.57是浮点型常量,C语言默认当成double类型来存储
printf("ok");
else
printf("no");