逍遥自在学C语言 | 赋值运算符
前言
在C语言中,赋值运算符用于将一个值赋给变量
这个过程分为两个步骤:
- 计算赋值运算符右侧的表达式
- 将结果赋给左侧的变量。
- C语言提供了多个不同的赋值运算符,包括基本的赋值运算符、复合赋值运算符以及条件赋值运算符等

一、人物简介
- 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。

- 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。

二、基本赋值运算符
最基本的赋值运算符是等号
=它的作用是将右侧表达式的值赋给左侧变量
例如,下面的语句将整数变量x的值赋为10:
int x;
x = 10;
注意,等号左侧必须是一个变量,不能是常量或表达式。
三、复合赋值运算符
- 复合赋值运算符是一种简写形式,用于将一个表达式和赋值操作合并在一起。
- 常用的复合赋值运算符如下表
| 运算符 | 含义 | 例子 |
|---|---|---|
| += | 加法赋值 | x += 5; // 等价于 x = x + 5; |
| -= | 减法赋值 | x -= 5; // 等价于 x = x - 5; |
| *= | 乘法赋值 | x *= 5; // 等价于 x = x * 5; |
| /= | 除法赋值 | x /= 5; // 等价于 x = x / 5; |
| %= | 取模赋值 | x %= 5; // 等价于 x = x % 5; |
| <<= | 左移位赋值 | x <<= 5; // 等价于 x = x << 5; |
| >>= | 右移位赋值 | x >>= 5; // 等价于 x = x >> 5; |
| &= | 按位与赋值 | x &= 5; // 等价于 x = x & 5; |
| ^= | 按位异或赋值 | x ^= 5; // 等价于 x = x ^ 5; |
| |= | 按位或赋值 | x |= 5; // 等价于 x = x | 5 |
- 例如,下面的语句将变量x的值加上5:
int x;
x += 5;
四、条件赋值运算符
- 条件赋值运算符(?:)是一种特殊的赋值运算符
- 用于根据条件选择赋值的结果,它的语法如下:
表达式1 ? 表达式2 : 表达式3
条件赋值运算符的作用是判断表达式1的值是否为真,如果为真,则返回表达式2的值,否则返回表达式3的值。
例如,下面的语句将变量x的值设置为1或2,具体取决于变量y是否等于0:
int x, y;
x = (y == 0) ? 1 : 2;
- 如果变量y等于0,则x的值为1,否则x的值为2。
五、赋值运算符的类型转换
在进行赋值运算时,C语言会根据赋值运算符两侧的数据类型进行自动类型转换。
如果赋值运算符右侧的表达式的类型和左侧变量的类型不一致,C语言会自动将右侧表达式的值进行类型转换,然后再赋值给左侧变量。
例如,如果将一个浮点数赋给一个整数变量,C语言会自动将浮点数的小数部分截断,并将整数部分赋给整数变量。
#include <stdio.h>
int main() {
float x = 1.25;
int a = 1;
a = a + x;
printf("a = %d\n", a);
return 0;
}
- 运行结果

小结
通过这篇文章,我们学会了
1、基本赋值运算符
2、复合赋值运算符
3、条件赋值运算符
欢迎各位 点赞 收藏 评论,如有错误请留言指正,非常感谢!
逍遥自在学C语言 | 赋值运算符的更多相关文章
- 小C的故事(快速学C语言,,,极速版!)
前几天这篇博客写了太多废话! 删啦~~. 本篇博客只是为chd A协的全嫩小鲜肉入门C语言的预科, 如果你在此处学习C语言, 不幸走火入魔, 小弱概不负责. //请直接随便找个C语言编译器,抄一下下面 ...
- 边看MHA源码边学Perl语言之一开篇
边看MHA源码边学Perl语言之一开篇 自我简介 先简单介绍一下自己,到目前为此我已经做了7年左右的JAVA和3年左右php开发与管理,做java时主要开发物流行业的相关软件,对台湾快递,国际快递,国 ...
- 快看Sample代码,速学Swift语言(1)-语法速览
Swift是苹果推出的一个比较新的语言,它除了借鉴语言如C#.Java等内容外,好像还采用了很多JavaScript脚本里面的一些脚本语法,用起来感觉非常棒,作为一个使用C#多年的技术控,对这种比较超 ...
- 我为什么要学Go语言
# 我为什么要学Go语言 ### 公司的强烈推荐---之前也了解过Go语言并没有觉得有什么了不起,Go能做的其他语言都能做. ### 网上查找学习Go语言的理由---网上大体有两类人,一类说Go是大公 ...
- 为什么学Python语言,只需四步全面了解Python语言
为什么学Python语言,只需四步全面了解Python语言每个时代都会悄悄犒赏会选择的人,Python现在风口的语言Python--第三大主流编程语言Python , 是一种面向对象的解释型计算机程序 ...
- 小朋友学C语言(7)
数组 一.数组简介 C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合.数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量. 数组的声明并不是声明一个个单独的变量,比 ...
- 快看Sample代码,速学Swift语言(2)-基础介绍 快看Sample代码,速学Swift语言(1)-语法速览
快看Sample代码,速学Swift语言(2)-基础介绍 Swift语言是一个新的编程语言,用于iOS, macOS, watchOS, 和 tvOS的开发,不过Swift很多部分内容,我们可以从C或 ...
- C语言和C++的应用领域都在哪些?学C语言好,还是学习C++好?
从事嵌入式开发十几年,基本上围绕着这两种编程语言展开,都可以直接操作底层的编程语言,用的越熟练越是感觉工具属性越强.虽然两种编程语言分属于不同的编程思想,用的时间长了觉得差异也不是很大,现在就个人的从 ...
- 从零开始学C语言
从零开始学C语言 @阆苑祁寒 更新时间:2019-09-13 写在前面:本文从一个初学者的角度,给出了对C语言的简单理解.如有谬误,敬请指出! Week1——基本语法 #include <std ...
- 重学C语言
重学C语言 #include <stdio.h> int main() { ; ; printf("I am %d year old.\n",age); printf( ...
随机推荐
- pycharm2019.3.1版本需要的JetBrains Runtime 11不支持windows 32位系统。
提示信息显示安装pycharm2019.3.1版本需要的JetBrains Runtime 11不支持windows 32位系统. 2.更换pycharm社区版的安装版本 百度找到解决办法,参考文章& ...
- 打开配置windos 2016 防火墙 日志
1 点击"开始"或者win+R打开"运行"对话框 键入gpedit.msc
- MySQL_GTID主从同步排错
1 在Master上 查询gtid后,记录gtid_executed 返回的值 mysql> show global variables like '%gtid%'\G ************ ...
- Docker 安装 MySQL5.7
1.拉取数据库镜像 docker pull mysql:5.7 docker images命令查看镜像是否下载成功 docker images 2.配置mysql 创建mysql目录,用于存放mysq ...
- 我是如何被我的c++大作业榨干的
手把手教你用git上传项目到GitHub(图文并茂,这一篇就够了),相信你一定能成功!! - 知乎 (zhihu.com) C++ 类对象数组_Slience_Perseverance的博客-CSDN ...
- I - Cloud Retainer's Game
I - Cloud Retainer's Game 传送门: I. Cloud Retainer's Game (codeforces.com) 题意: 在坐标轴上有2个边界:y=0和y=H.有n个质 ...
- MQ(基本概念)
MQ的基本概念 队列管理器:是MQ中最上层的一个概念,由它为我们提供消息队列服务. 消息:即应用程序发送给MQ托管的数据.其有两部分组成:消息描述符和消息体. 消息分为两种类型:永久型和非永久型. 永 ...
- Unity中的3D数学
3D数学(2022.11.25) 三角函数 Unity中会运用到角度制(Deg)和弧度制(Rad)的转换,弧度制是用圆的弧长来衡量角度的大小,π对应180度.这种转换在Unity中对应有两个方法: 角 ...
- What is Weight Lifting?
Weight lifting is the process of lifting items of great mass in order to increase the muscle size an ...
- 使用react-vite-antd,修改antd主题,报错 [vite] Internal server error: Inline JavaScript is not enabled. Is it set in your options? It is hacky way to make this function will be compiled preferentially by less
一般报错 在官方文档中,没有关于vite中如何使用自定义主题的相关配置,经过查阅 1.安装less yarn add less (已经安装了就不必再安装) 2.首先将App.css改成App.les ...