初识c语言系列(四) 操作符

文章目录

操作符

因为是初始c语言所以们只进行简单的介绍,之后会和大家一起进行深入学习。

算数操作符 + - * / %分别是 加、减、乘、除、取余的操作符

注意/两端的操作数如果都是整数,执行的为整数除法,如果至少有一个操作数是浮点数执行的才是浮点数的除法。下面代码的结果为result = 1.0;result2 = 1.5;

#include<stido.h>
int main()
{
	float  result = 0;
	float  result2 = 0;

	result = 6 / 4;
	result2 = 6 / 4.0;
	printf("%.1f\n%.1f\n", result, result2);
	return 0;

return 0;
}

移位操作符>> <<将二进制的位整体向右或者向左移动一位。
赋值操作符= += -= *= /= &= ^= != >>= <<=

赋值操作符的作用就是给某个变量赋值,是算术运算符和赋值的一种简便写法,具体的用法和利弊咱们以后再说,现在大概了解这是什么东西就可以了。

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

这里我们简单介绍一下-- ++的作用,我们直接上代码。如下图我们输出的a的值为4,b的值为5。

#include<stdio.h>
int main ()
{
   int b = 5;
   int a = 5;
	
   b = a--;

	printf("%d%d", a, b);
	}

如果我们把代码改成下面这样,那么输出的就是a = 4,b = 4,造成这样的原因是什么呢?是因为--前置,需要先进行减法操作在调用a,而后置--是先调用a之后在进行自减操作。++的使用方法与--相同。

#include<stdio.h>
int main ()
{
   int b = 5;
   int a = 5;
	
   b = --a;

	printf("%d%d", a, b);
	}

关于其他的单目操作符等后期再给大家一一详解。

关系操作符
>
>=
<
<=
!=用于测试“不相等”
==用于测试“相等”

关系操作符的作用,都是对两个操作数进行判断。值得关注的一点是,在字符串的比较上==是不能判断两个字符串相等的,应该使用strcmp判断。因为使用==对两个字符串判断,比较的并不是字符串中的内容,而是储存该字符串内存的地址。

#include <stdio.h>
#include <string.h>
int main()
{
	char arr1[] = "abcdef";
	char arr2[] = "abcdef";

if (strcmp(arr1, arr2) == 0)
	{
		printf("==\n");
	}
	else
	{
		printf("!=\n");
	}

	return 0;
}

其他关系操作符的用法我们也在后续的学习使用时在进行介绍。

逻辑操作符
&& - 逻辑与 - 并且
|| - 逻辑与 - 或者

逻辑操作符关注的是真假,具体的使用方法如下

#include<stdio.h>
int mian()
{

	int a = 0;
	int b = 1;

	int c = a && b;
	int c2 = a || b;

	printf("%d%d", c, c2);

	return 0;
	}

输出c的值为0因为&&是并且的意思,需要两边的操作数都为1输出的值才为1,||表示或者,只要有1存在最后输出的就是1,大家可以自己练习一下,感受一下逻辑操作符的用法与作用。

条件操作符(三元操作符)
exp1 ?exp2 : exp3

三元操作符的含义跟if选择语句差不多,对exp1进行判断,如果成立则输出exp2,不成立就输出exp3。如下图,代码的含义就是a是否大于4,如果是b = 3,如果不是 b = 10。

#include<stdio.h>
int main()
{
	int a = 5;
	int b = 0;

	(a > 4) ? (b = 3) : (b = 10);
	b = (a > 5 ? 3 : 10);//这样写符合语法,而且更加美观

	printf("%d", b);
	
	return 0;
	}

逗号表达式
exp1,exp2,exp3,...expn

下标引用、函数的调用和结构成员
[] () . ->

逗号表达式的特点:从左向右依次计算,整个表达式的结果为最后一个表达式的结果。

	    int a = 3;
		int b = 5;
		int c = 0;
		int d = (a += 2, b=b-c+a, c=a+b);
		        //a=5    b=10     c=5+10

		
		printf("%d\n", d);
		printf("%d %d %d\n", a, b, c);
	
		return 0;

所以最后的结果为d = 15,因为逗号表达式的结果为最后一个表达式结果。

简单介绍一下[] ()

#include<stdio.h>
int main ()
{
int arr[10] = {0};//0~9

arr[4] = 5;
printf("%d\n",arr[4]);
// arr 4 是[]的两个操作数
printf("%d\n"4[arr]);//验证arr 4 是[]的两个操作数

return 0;
}

函数调用操作符(),在下面的代码中()的操作时是Add,2,3。.

#include<stdio.h>
int main ()
{
int c = Add(2,3);
printf("%d",c);

return 0 ;

}

int Add(int x , int y)
{
return x+y;
}

以上简单介绍了一下c语言中操作符的基本用法,没有介绍到的,在之后的学习中也会跟大家分享,感谢的大家的阅读。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悲伤猪小猪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值