C语言基础:运算符详解
需积分: 1 56 浏览量
更新于2024-08-03
收藏 203KB PDF 举报
"C语言基础-运算符.pdf"
在C语言中,运算符是编程的关键组成部分,它们用于执行各种计算和逻辑判断。C语言提供了一系列的运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符以及杂项运算符。以下是这些运算符的详细介绍:
1. **算术运算符**:
- `+`:加法运算符,例如`A+B`将得到30。
- `-`:减法运算符,例如`A-B`将得到-10。
- `*`:乘法运算符,例如`A*B`将得到200。
- `/`:除法运算符,例如`B/A`将得到2,需要注意的是,如果操作数是整数,结果也会是整数,丢弃小数部分。
- `%`:取模运算符,例如`B%A`将得到0,返回两个整数相除后的余数。
2. **自增/自减运算符**:
- `++`(前缀或后缀):自增运算符,将变量的值增加1。例如,`A++`将使A的值从10变为11,而`++A`同样会使A增加1,但在表达式中会先增加再使用新的值。
- `--`(前缀或后缀):自减运算符,将变量的值减少1。例如,`A--`将使A的值从10变为9,而`--A`会使A减少1,然后使用减少后的值。
3. **关系运算符**:
- `==`:等于运算符,如果两个操作数相等,则返回真(非零值)。
- `!=`:不等于运算符,如果两个操作数不相等,则返回真(非零值)。
- `>`:大于运算符,如果左操作数大于右操作数,则返回真(非零值)。
- `<`:小于运算符,如果左操作数小于右操作数,则返回真(非零值)。
- `>=`:大于等于运算符,如果左操作数大于或等于右操作数,则返回真(非零值)。
- `<=`:小于等于运算符,如果左操作数小于或等于右操作数,则返回真(非零值)。
4. **逻辑运算符**:
- `&&`:逻辑与运算符,如果两边的操作数都为真,则返回真(非零值)。
- `||`:逻辑或运算符,如果至少有一个操作数为真,则返回真(非零值)。
- `!`:逻辑非运算符,反转操作数的布尔值,真变假,假变真。
5. **位运算符**:
- `&`:按位与运算符,两个二进制位都为1时,结果位才为1。
- `|`:按位或运算符,只要一个二进制位为1,结果位就为1。
- `^`:按位异或运算符,两个二进制位相同为0,不同为1。
- `~`:按位取反运算符,对操作数的每一位进行取反。
- `<<`:左移运算符,将二进制位向左移动指定的位数。
- `>>`:右移运算符,将二进制位向右移动指定的位数。
6. **赋值运算符**:
- `=`:简单赋值运算符,将右边的值赋给左边的变量。
- `+=`:加法赋值运算符,如`A+=B`相当于`A=A+B`。
- `-=`:减法赋值运算符,如`A-=B`相当于`A=A-B`。
- `*=`:乘法赋值运算符,如`A*=B`相当于`A=A*B`。
- `/=`:除法赋值运算符,如`A/=B`相当于`A=A/B`。
- `%=`:取模赋值运算符,如`A%=B`相当于`A=A%B`。
7. **其他运算符**:
- `,`:逗号运算符,它允许在一个表达式中执行多个操作。例如,`(A++, B++)`会先执行A++,然后返回B++的结果。
- `sizeof`:计算数据类型或变量的大小,通常以字节为单位。
- `()`: 函数调用运算符,例如`printf()`。
理解并熟练运用这些运算符是学习C语言的基础,它们在编写程序时起着至关重要的作用,帮助我们实现复杂的计算和逻辑控制。通过实例代码的练习,可以更好地掌握这些运算符的用法。例如,给出的实例代码展示了如何使用这些算术运算符和自增/自减运算符来改变和打印变量的值。
101 浏览量
210 浏览量
182 浏览量
153 浏览量
2023-03-11 上传
2023-12-26 上传
101 浏览量
2021-09-30 上传
2024-06-05 上传

shandongwill
- 粉丝: 6295
最新资源
- jTessBoxEditor 2.2.0发布:Java环境下Tesseract学习数据训练工具
- lz4-java-1.4.1中文英文对照文档及资源下载指南
- PushSharp库: 适用于.NET的iOS APNS消息推送解决方案
- NBATV得分阻止插件:安心观赛体验
- BIND 9 DNS解析器安全性修复及功能更新介绍
- aslm工具箱:面向对象的ASL数据分析开源解决方案
- Lua语言在游戏开发项目中的应用研究
- 自制九宫格抽奖动画,轻松实现中奖概率设置
- 自定义网页右键菜单的jQuery实现教程
- 狼主题新标签页壁纸 - 高清动物图片与多功能CRX插件
- C#集成MailChimp与Constant Contact API代码示例
- JavaWeb网上书城系统完整源码及数据库
- 探索iOS14与ML框架结合的ThyPorch应用外观
- 轻松使用NSNotificationCenter封装工具
- Qt5与CEF3整合开发环境搭建指南
- 易语言实现SQL2000数据库登陆注册功能