什么是操作符?操作符也称运算符,是一种表示对数据进行某种运算处理的符号。C语言的运算符按完成的运算操作性质可以分为算术运算符、关系运算符、逻辑运算符、赋值运算符和其他运算符。按参与运算的运算数又可以分为单目运算符、双目运算符和三目运算符。接下来让我们详细了解这些操作符的种类。
算数操作符:+ - * / %(均为双目运算符)
关系运算符:< <= > >= == !=(均为双目运算符)
赋值运算符:= += -= /= &= ^= |= >>= <<=(均为双目)
逻辑运算符:与&&(双目) 或||(双目) 非 !(单目)
移位操作符:右移>> 左移<<(移动的是二进制位)(均为双目)
位操作符:按位与 &
按位或 |
按位异或 ^(均为双目)
条件操作符(三目运算符):语句一?语句二:语句三
如果语句一成立,整个表达式的结构是语句二的结果,反之是语句三的结果。
让我们看一个例子:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int a = 1;
int b = 3;
int max = 0;
max = a > b ? a : b;
printf("%d", max);
return 0;
}
它的运行结果为3,是否和你想的一样呢?
下标引用操作符:[ ]
函数调用操作符:( )
逗号表达式:逗号隔开的一串表达式,从左到右依次计算,整个表达式的结果是最后一个表达式的结果。
接下来总结一下单目运算符:
单目运算符:
! | 逻辑反操作 |
- | 负值 |
+ | 正值 |
& | 取地址 |
sizeof | 操作数的类型长度(以字节为单位) |
~ | 对一个数的二进制按位取反(二进制中所有数字0变成1,1变成0) |
-- | 前置、后置-- |
++ | 前置、后置++ |
(类型) | 强制类型转换 |
很多人对前置++和后置++比较混淆,那么我们来区分一下这对好兄弟。下面会给出程序及运行结果。
前置++(++a):先++,后使用
后置++ (a++):先使用,后++
最后,了解 #define定义常量和宏
define是一个预处理指令
#define定义常量:
#define _CRT_SECURE_NO_WARNINGS
#define MAX 100
#include<stdio.h>
int main()
{
printf("%d", MAX);
return 0;
}
#define定义宏:
#define ADD(x,y) x+y
#include<stdio.h>
int main()
{
printf("%d", ADD(3,2));
return 0;
}
注意:宏是完成替换的,是一个表达式,也就是说,最好给它带上括号,保证它是一个整体。
今天的分享就到这里啦!