C 语言运算符详解

C 语言中的运算符

运算符用于对变量和值进行操作。

在下面的示例中,我们使用 + 运算符将两个值相加:

c 复制代码
int myNum = 100 + 50;

虽然 + 运算符通常用于将两个值相加,就像上面的示例一样,它还可以用于将变量和值相加,或者将变量和另一个变量相加:

c 复制代码
int sum1 = 100 + 50;      // 150 (100 + 50)
int sum2 = sum1 + 250;   // 400 (150 + 250)
int sum3 = sum2 + sum2;   // 800 (400 + 400)

C 将运算符分为以下几组:

  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符

算术运算符

算术运算符用于执行常见的数学运算。

运算符名称 描述 示例
+ 加法 x + y
- 减法 x - y
* 乘法 x * y
/ 除法 x / y
% 模运算 x % y
++ 增量 ++x
-- 减量 --x

赋值运算符

赋值运算符用于将值赋给变量。

在下面的示例中,我们使用 赋值 运算符 (=) 将值 10 赋给一个名为 x 的变量:

c 复制代码
int x = 10;

加法赋值 运算符 (+=) 将值添加到变量中:

c 复制代码
int x = 10;
x += 5;

所有赋值运算符的列表:

| 运算符 | 示例 | 等同于 |
|-------|-----------|--------------|-----|-------|---|
| = | x = 5 | x = 5 |
| += | x += 3 | x = x + 3 |
| -= | x -= 3 | x = x - 3 |
| *= | x *= 3 | x = x * 3 |
| /= | x /= 3 | x = x / 3 |
| %= | x %= 3 | x = x % 3 |
| &= | x &= 3 | x = x & 3 |
| | = | x | = 3 | x = x | 3 |
| ^= | x ^= 3 | x = x ^ 3 |
| >>= | x >>= 3 | x = x >> 3 |
| <<= | x <<= 3 | x = x << 3 |

比较运算符

比较运算符用于比较两个值(或变量)。这在编程中很重要,因为它可以帮助我们找到答案和做出决策。

比较的结果返回值是 1 或 0,分别表示 true (1) 或 false (0)。这些值称为布尔值

在下面的示例中,我们使用 大于 运算符 (>) 来判断 5 是否大于 3:

c 复制代码
int x = 5;
int y = 3;
printf("%d", x > y); // 返回 1 (true) 因为 5 大于 3

所有比较运算符的列表:

运算符名称 示例
== x == y
!= x != y
x > y
< x < y
>= x >= y
<= x <= y

逻辑运算符

您还可以使用逻辑运算符测试 true 或 false 值。

逻辑运算符用于确定变量或值之间的逻辑关系:

| 运算符名称 | 描述 | 示例 |
|-------|-----|------------------------|-----|--------|---|--------|
| && | 逻辑与 | x < 5 && x < 10 |
| | | | 逻辑或 | x < 5 | | x < 4 |
| ! | 逻辑非 | !(x < 5 && x < 10) |

sizeof 运算符

可以使用 sizeof 运算符查找数据类型或变量的内存大小(以字节为单位):

c 复制代码
int myInt;
float myFloat;
double myDouble;
char myChar;

printf("%lu\n", sizeof(myInt));
printf("%lu\n

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

相关推荐
兵哥工控4 分钟前
MFC工控项目实例二十九主对话框调用子对话框设定参数值
c++·mfc
我爱工作&工作love我11 分钟前
1435:【例题3】曲线 一本通 代替三分
c++·算法
用户31574760813539 分钟前
成为程序员的必经之路” Git “,你学会了吗?
面试·github·全栈
娃娃丢没有坏心思41 分钟前
C++20 概念与约束(2)—— 初识概念与约束
c语言·c++·现代c++
lexusv8ls600h41 分钟前
探索 C++20:C++ 的新纪元
c++·c++20
lexusv8ls600h1 小时前
C++20 中最优雅的那个小特性 - Ranges
c++·c++20
白-胖-子1 小时前
【蓝桥等考C++真题】蓝桥杯等级考试C++组第13级L13真题原题(含答案)-统计数字
开发语言·c++·算法·蓝桥杯·等考·13级
好睡凯1 小时前
c++写一个死锁并且自己解锁
开发语言·c++·算法
杨哥带你写代码2 小时前
网上商城系统:Spring Boot框架的实现
java·spring boot·后端
camellias_2 小时前
SpringBoot(二十一)SpringBoot自定义CURL请求类
java·spring boot·后端