【菜鸟逆袭记】之初识操作符

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

操作符

1.算术操作符

1前置和后置

这里 + 和 - 都是字面意思没啥好讲的。我们上点难度—>区分一下前置 + +- -和后置+ +- -的不同

#include<stdio.h>
int main()
{
	int a = 100;
	//int b = a++;  //后置++
	int b = ++a;  //前置++
	printf("a=%d b=%d", a,b);
	return 0;
}

运行结果
前置

后置

怎么样结果跟你想的一样吗。接下来让我们来分析一下产生这种差异的原因

int b=++a=(++a);
a=a+1; b=a;
前置++先++后使用

int b=a++=(a++);
b=a; a++;
后置++先使用后++

  • 前置- -和后置- -的底层逻辑是一样的。那么你们可以当做列子拿来练练手

2取膜%和除法/

日常生活中我们用的乘法×和除法÷在C语言中可不是这样的哦。C语言的乘法是C语言的乘法是 * 除号是 / 这一点一定要牢记不要搞混哦。
知道了它们的用法接下来讲一讲注意的地方

1./ 除号的两端如果都是整数执行的是整数除法—保留整数部分
2./ 除号的两端至少一个树是浮点数才执行的是浮点数的除法—日常生活中的除法
3.取膜–顾名思义就是取余数它的两端操作数必须都为整数才可以

接下来就上代码看看
1.
运行结果

结论
进行整数除法无论如何结果都是整数部分用浮点数来接收都不行

2.
在这里插入图片描述
运行结果
在这里插入图片描述
结论
两端至少有一个浮点数类型的数据那么执行的就是浮点数除法

3.

运行结果

结论
取膜运算的两端操作数必须都为整形类型

2.移位操作符

这里涉及二进制以后会讲的。持续关注我哦

3.位操作符

这里涉及二进制以后会讲的。持续关注我哦

4.赋值操作符


a + = b <---->a = a + b
a - = b <----->a = a - b
a * = b <----->a = a * b
a / = b <----->a = a / b

注意

  • =赋值操作符和= =逻辑操作符不一样-----以a = b 和 a = = b为例子解释一下
    -----前者是把 b 的值赋给了 a 后者是 a 和 b 相等

5.单目操作符


补充
在C语言中判断真假的方法是0 为假非0为真一般是1记住这里是非0负数也是真

1逻辑反操作

逻辑反操作主要是用来打印条件为假的内容

  1. 如果想的打印真的内容-----ifa
  2. 如果想的打印假的内容-----ifa

上代码
在这里插入图片描述
运行结果

2sizeof

这里需要把sizeof 和strlen两个比较来看

1.sizeof—操作符无须引头文件—计算数据及其类型所占用空间的大小单位是字节
2.strlen—库函数头文件是<string.h>—计算字符串中 \0 前面的字符个数单位是个

在这里插入图片描述
这里我们不难发现
当同时计算一个字符串hello的时候strlen的结果是 5 没有算上 \0而sizeof 的结果是 6 算上了 \0 所占用的空间

3强制类型转化

基本构成目标类型变量
注意 不能少


运行结果

结论
如果一个浮点型的数据强制类型转化为整形—只取整数部分

6.关系操作符

这里重点前面都有讲过可以翻上去看看

7.逻辑操作符

  1. &&------两边同时为真才为真其他都为假
    2. ||------两边同时为假才为假其他全为真这里翻过坑的

8.条件操作符


注意
别看是问号其实是情况为真的输出这里翻过墙

我们用这个来实现一个求两个数的最大值

运行结果

结论
1.三目操作符跟 if self 的底层原理相似
2.基本构成表达式1 表达式2 表达式3
3.表达式2 相当于 if 成立后执行的语句表达式3相当于 if 不成立 else 执行的语句

9.逗号表达式

这个我们以后再讲记得持续关注我哦

10.下标引用、函数调用和结构成员

  1. [ ]----用于数组
    2. ----函数调用
    3.点.和 -> —用于结构体
    这一部分的大多数内容详细讲解我都在【菜鸟逆袭记】之初识C语言中讲过不清楚的小伙伴可以移步去看一看
阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6