C 语言的递增运算符 ++ 和递减运算符 --

递增运算符 increment operator

放在while循环的判断条件中时,要使用前缀形式。

代码示例:

c 复制代码
#include<stdio.h>

int main(void)
{
	int shoe = 0;
	while (++shoe < 18.5)
	{
		printf("%d\n", shoe);
	}

	return 0;
}

结果:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

判断条件中,先进行递增,然后用递增后的值去和18.5进行比较。如果小于18.5则这个shoe的值进入循环。

参与比较的shoe是从1到19.

进入循环的shoe从1到18.

如果采用后缀的形式,当shoe等于18时,先进行比较,条件成立,然后递增为19,然后进入循环,则进入循环的shoe的最终值为19.

递减运算符 decrement operator

同理,放在while循环的判断条件中时,要使用前缀形式。

++ 和 -- 只能影响可以修改的左值。

(x*y)++ 将不起任何作用,因为 (x*y) 不是可以修改的左值,只是一个临时值。

相关推荐
m0_5312371710 小时前
C语言-指针终阶
c语言·开发语言
散峰而望11 小时前
C++ 启程:从历史到实战,揭开命名空间的神秘面纱
c语言·开发语言·数据结构·c++·算法·github·visual studio
水饺编程12 小时前
第4章,[标签 Win32] :TextOut 测试案例3代码改编
c语言·c++·windows·visual studio
Pretend° Ω16 小时前
抢占优先级 vs 响应优先级:任务调度的双刃剑
linux·c语言·抢占优先级·响应优先级
17(无规则自律)17 小时前
你对 argc 和 argv 的理解有多深?
linux·c语言·嵌入式硬件·考研
小刘爱玩单片机19 小时前
【stm32协议外设篇】- HX1838 红外接收头
c语言·stm32·单片机·嵌入式硬件
小刘爱玩单片机19 小时前
【stm32协议外设篇】- DS18B20 单总线数字温度检测模块
c语言·stm32·单片机·嵌入式硬件
bepeater123421 小时前
Laravel9.X核心特性全面解析
c语言·c++·c#·php
hope_wisdom21 小时前
C/C++数据结构之用链表实现队列
c语言·数据结构·c++·链表·队列
’长谷深风‘21 小时前
线程函数接口和属性
c语言·开发语言·线程·进程·软件编程