多组输入
int iq=0;
while(scanf("%d",&iq))
scanf函数在调用失败的时候,读取失败的时候,会返回EOF
EOF-end of file放在文件末尾作为文件结束存在的 -1
单目操作符-只有一个操作数
! 逻辑反操作
- 负值
+ 正值
& 取地址
sizeof 操作数的类型长度(以字节为单位)、
~ 对一个数的二进制按位取反
-- 前置,后置--
++ 前置,后置++
* 间接访问操作符(解引用操作符)
(类型) 强制类型转换
a+1 a不会发生改变
++a 前置++ 先++,后使用
a++ 后置++ 先使用,后++
int a=10;
int b=a+1;
int b=++a;//前置++//a=a+1;b=a;
int b=a++;//后置++//int b=a;a=a+1;
关系操作符
>
>=
<
<=
!=
==
一个=是赋值,两个=是等于
逻辑操作符
&& 逻辑与
|| 逻辑或
&&且一假则假 II或
条件操作符
exp1?exp2:exp3 三目操作符
exp3是最终运算的值
m=(a>b)?a:b;
调试开始-f10 fn+f10
逗号表达式
表达式会从左到右依次计算,但是整个表达式的结果是最后一个表达式的结果。
arr[5]
[]-下标引用操作符,他的操作数:数组名,下标
max(3,5)
()函数调用操作符,他的操作数是:函数名,3,5
常见关键词
预先设计好的,用户不能随便创建关键字
switch--break
case default
ifelse
goto
循环 - break continuefor
while
do. while
void -无/空
char
short
int
long
float
double
signed 有符号的
unsigned 无符号的
typedef 类型重命名
const
extern声明外部符号的
sizeof
auto
register -寄存器
static
enum -枚举关键字
struct -结构体
union -联合体(共用体)
return - 返回函数中使用
typedef类型重定义,重命名
(复杂类型简单化)
unsigned int num=10; // ① typedef unsigned int uint; //② uint num2=10; // ③
①和③相同
register寄存器关键字
寄存器是集成到CPU上的
寄存器:空间小 速度快 造价高
高级缓存
内存 8G 16G
硬盘 500G 1T
网盘 免费 1T