一、基本数据类型
1、整型:int 一般占用四个字节
2、单精度实型:float 一般占用四个字节
3、双精度实型:double 一般占用八个字节
4、字符型:char 一般占用一个字节
各类数值型数据之间的混合运算:不同类型要转化为同一类型然后进行运算。
例:int i = -20;unsigned int j = 10;求i+j=?
i=(1000 0000 0000 0000 0000 0000 0001 0100)B 转化为补码(1111 1111 1111 1111 1111 1111 1110 1100)
j= (0000 0000 0000 0000 0000 0000 0000 1010)B转化为补码(0000 0000 0000 0000 0000 0000 0000 1010)
1111 1111 1111 1111 1111 1111 1110 1100
+ 0000 0000 0000 0000 0000 0000 0000 1010
————————————————————————
1111 1111 1111 1111 1111 1111 1111 0110(4294967286)
二、格式说明符含义
%d:十进制有符号整数
%u:十进制无符号整数
%o:八进制无符号整数(不输出前导0)
%x:十六进制无符号整数(不输出前导符0x)
%c:字符型数据输出
%s:字符串数据输出
%f:按小数输出
三、控制结构
1、 if(表达式1)语句1
else if(表达式2)语句2
else if(表达式3)语句3
……
else if(表达式m)语句m
else 语句n
匹配规则:
else总是与它上面的,最近的,统一复合语句中的,未配对的if语句配对;
当if和else数目不同时,可以加花括号来确定配对关系
2、switch语句的格式:
switch (表达式)
{
case 常量表达式1:语句1; break;
case 常量表达式2:语句2; break;
…
case 常量表达式n:语句n; break;
default :语句n+1; break;
}
四、continue 与break 的区别
continue:结束本次循环,进行下次循环
break:结束循环,跳出一层循环体
注意:break语句不能用于循环语句和switch语句之外的任何其他语句中。
五、const
const表示常量,相当于宏定义,只能读取,不能被修改。
常变量:const float PI = 3.14;
指针常量:char * const p = “abc”;(p地址不可以被修改)
常指针常熟:char const *p = “abc”;(p指向的内容不可以被修改)
常函数:
const 与 #define的比较:
const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查。而对后者只进行字符替换,没有类型安全检查,并且在字符替换可能会产生意料不到的错误(边际效应)。