【初识C语言】/*C语言最全操作符讲解*/

发布时间:2024-07-25 19:01

hello,各位小伙伴们,大家好!我是槿凉。 今天呢又是C语言知识点分享的一天,那么今天来讲一讲C语言操作符的具体内容,好啦,咋们废话不多说直接上干货。

一:操作符

算术操作符

+        -    *    /      %
移位操作符

>>                 <<

位操作符

&         ^        |

赋值操作符

=  +=  -=  *=  /=  &=  ^=   |=    >>=    <<=

单目操作符

!           逻辑反操作
-           负值
+           正值
&           取地址
sizeof      操作数的类型长度(以字节为单位)
~           对一个数的二进制按位取反
--          前置、后置--
++          前置、后置++
*           间接访问操作符(解引用操作符)
(类型)       强制类型转换
关系操作符

>
>=
<
<=
!=   用于测试“不相等”
==      用于测试“相等”

逻辑操作符

&&     逻辑与
||          逻辑或

条件操作符

exp1 ? exp2 : exp3

逗号表达式

exp1, exp2, exp3, …expN
下标引用、函数调用和结构成员

[]    () .   ->

那么在我们的C语言日常使用中,大概有这么十大类常用的操作符,今天就挑几个比较常用的给大家讲解一下具体用法,如果小伙伴们对其他的操作符还有不了解的,可以评论区或者私信我都是可以的!

 二.具体用法

1.算术操作符:这其中就包括 加 减 乘 除 取余五大操作,非常的简单,这里给大家简答的演示一下代码,大家可以去VS2019或VS2022上面自己亲身体验一下,这样效果会很棒。

#include
int main() {
	int a = 1;
	int b = 2; 
	int c = a + b;
	int c = a - b;
	int c = a *b;
	int c = a / b;
	int c = a + b;
	printf("%d", c);
	return 0;
}

 2.移位操作符:移位运算符其实就是将整数写成二进制的形式,通过移位运算符可以改变01数字,从而改变数字的值,这里就不具体的讲解!

 3.位操作符:&         ^        |,同移位运算符一样,这里不做具体讲解!

4.赋值运算符: 简单来说就是对我们定义的变量赋值。赋值从右往左看,将等号右边的值赋给等号左边的变量,这里我们上代码具体演示一下。

	int a = 1;//给变量a赋值为1
	int b = 2; //给变量b赋值为2
	a += 2;//其实就等价于a=a+2;
	b -= 3;//这里等价于b=b-3;
	//同理,*=,/=,也是同样的运算

 5.单目运算符:即只有一个操作数的运算,&和*这两个操作符会在指针里面具体讲到。

 首先我们来看一下逻辑反操作!的用法: (C语言中规定0为假,非0位真)      

#include
int main() {
	int a = 1;//给变量a赋值为1
	if (a)//如果a为真执行下面的语句
	{
		printf("haha");
	}
	if (!a)//如果!a执行下面的语句
	{
		printf("nice");
	}
	return 0;
}

 结果:可以看到打印的是haha,说明a为真,若a为0,那么!a为真,将会打印nice.

【初识C语言】/*C语言最全操作符讲解*/_第1张图片

 2.sizeof的用法:这里我们求数组arr中元素的个数,我们知道sizeof的作用是求操作数的长度(以字节为单位),那么sizeof(arr)的长度应该就是整个数组的长度,再除以数组中某个元素的长度比如arr[0],最后的结果就是数组中元素的个数。

 我们来看代码:

#include
int main() {
	int arr[10] = { 0 };
	int sz = sizeof(arr) / sizeof(arr[0]);
		printf("数组arr的长度是%d",sz);
	return 0;
}

 结果:因为数组的长度是40(字节),一个元素长度为4(字节),所以数组有10个元素。

【初识C语言】/*C语言最全操作符讲解*/_第2张图片

 3.-- 和++的用法:我们知道--和++可以放在变量的前置或后置,放在前置表示这个变量要先++ 或--然后在使用,而--和++放置在变量的后面那么这个变量就要先使用,然后在--或++,我们来看具体的例子。

#include
int main() {
	int a = 2;
	int b = 3;
	int c = a++;
	printf("%d", c);
	return 0;
}

 结果:我们可以看到输出的结果是2,说明后置++是这个变量先使用然后值加一。

 【初识C语言】/*C语言最全操作符讲解*/_第3张图片

 我们再来前置运算测试一下:

#include
int main() {
	int a = 2;
	int c = --a;
	printf("%d", c);
	return 0;
}

结果:输出是1,说明a已经自减1

【初识C语言】/*C语言最全操作符讲解*/_第4张图片

 关系运算符

>
>=
<
<=
!=   用于测试“不相等”
==      用于测试“相等”

简单讲一下最后两个!=和==的用法。

 1.==的用法(看代码)

#include
int main() {
	int a = 2;
	int b = 9;
	if (a == b)
	{
		pritnf("现在开始努力学习进大厂");
	}
	return 0;
}

结果:可以看到a与b的值相等,所以执行语句输出。

 【初识C语言】/*C语言最全操作符讲解*/_第5张图片

 再测试一下!=的用法:

#include
int main() {
	int a = 5;
	int b = 9;
	if (a != b)
	{
		printf("现在不努力,毕业卖红薯");
	}
	return 0;
}

 结果:a不等于b,输出

【初识C语言】/*C语言最全操作符讲解*/_第6张图片

 逻辑运算符:&&和||,类似于数学里面的并和或的意思,&&是左右两个表达式的值都为真才执行,而||是有一个表达式的值为真就执行,看代码具体实现。

 1.&&的用法

#include
int main() {
	int a = 1;
	int b = 9;
	if (a && b)
	{
		printf("日日卷,高薪来");
	}
	return 0;
}

 结果:因为a和b的值都为真,所以执行

 【初识C语言】/*C语言最全操作符讲解*/_第7张图片

 来看||的用法:

#include
int main() {
	int a = 0;
	int b = 9;
	if (a || b)
	{
		printf("卷的苦中苦,方为高薪人");
	}
	return 0;
}

 结果:a的值为0(假),b的值为真,有一个为真就执行。

【初识C语言】/*C语言最全操作符讲解*/_第8张图片

 条件操作符尖括号里面的运算符的意思就是,exp1是一个表达式,若为真整个表达式的值就是exp2,若为假,整个表达式的值就为exp3。来看代码演示。

 

#include
int main() {
	int a = 7;
	int b = 9;
	int c = (a > b ? 3 : 5);		
	printf("%d", c);
	return 0;
}

结果:因为a=7不大于b=9,所以输出5.

【初识C语言】/*C语言最全操作符讲解*/_第9张图片

逗号运算符exp1, exp2, exp3, …expN,这些运算符的意思就是从左往右依次计算,最后一个运算结束输出整个表达式的值。

#include
int main() {
	int a = 7;
	int b = 9;
	int c;
	int sum = (c = a + b, b = a - c, c = b - a);
	printf("%d", sum);
	return 0;
}

 结果:可以发现,依次从左往右计算括号里面的运算,最后我们用定义一个变量sum来存放本次逗号运算符的结果。

【初识C语言】/*C语言最全操作符讲解*/_第10张图片

 好了,呢么今天的知识分享就到这里了,感谢小伙伴们的一键三连啦!!!

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号