主要内容
运算符
逗号表达式
问号表达式
一.运算符
- “/” 除 取整数部分 e.g 7/3 = 2
- “%” 取余数部分 e.g 7%3 = 1
(x % 16)+1 =1~16(范围);(x % 51) + 50 = 50~100(范围); - && “且” 要两个同时成立 e.g 1>2 && 5<9; (false)
- || “或” 只要一个成立就行 e.g 1>6||7<9(true)
- ++ 自增 e.g a++, ++a
e.g 注意两者的区别
若为++a
int a = 20;
if(++a ==20){ //区别a++
printf("a = 20\n");
printf("a = %d\n",a);
}else{
printf("a != 20\n");
printf("a = %d\n",a);
}
printf("a = %d\n",a);
输出结果为
若为a++
int a = 20;
if(a++ ==20){ //区别a++
printf("a = 20\n");
printf("a = %d\n",a);
}else{
printf("a != 20\n");
printf("a = %d\n",a);
}
printf("a = %d\n",a);
输出结果为
- -- 自减 (与++用法一致)
- == “判断” e.g a==2 注意判断“==”与赋值“=”的区别
- = 赋值
- += a+=2 等同于 a = a+2
- != 不等于
二. 逗号表达式
result = 表达式1,表达式2,...,表达式n;(结果是表达式n)
e.g
int temp = 20;
int t2 = (temp--,temp--,temp--);
if(t2){
printf("temp = %d\n",temp);
printf("t2 = %d\n",t2);
输出结果为
(temp-- 先将temp值赋给t2,再--,将--后的值赋给本身)
三. 问号表达式
e.g
c = 3>1?'y':'n';
等同于
cahr c;
if(3>1){
c ='y';
}else{
c ='n';
}