首页 > 其他分享 >C语言的自增自减运算符

C语言的自增自减运算符

时间:2022-11-08 23:25:06浏览次数:42  
标签:输出 自增 ++ 减一 运算符 -- 自减

简单去理解,C语言的自增自减运算符的最终结果就是对自身进行加一和减一操作。
但是当++、--作为后缀时则具有延后性,可能对程序有一些副作用,并且其的优先级也会对程序产生一定的影响。
举例:

#include <stdio.h>
int main()
{
	int a=0;
	if(++a)
		printf("%d",a);
	printf("%d",a--);
	printf("%d",a);
	return 0;
}

输出结果是:110

在这里充分展示了++、--在变量的前缀和后缀时的作用。
++、--在变量前缀时,表示先对变量进行加一(或减一),然后再参与运算。
++、--在变量后缀时,表示变量先参与运算,然后再去加一(或减一)。

以下是对上面代码例子的解释:
程序先定义变量a的值为0,然后if()判断,因为++在前缀,所以a先加一,值为1,因此if(1)下的输出语句执行,输出a的值1。
接着第二次输出语句里,--在后缀,因此a的值先参与运算输出a的值1,然后a的值再减一,为0.
第三次输出语句,输出a的值0。

考虑其优先级,自增自减运算符的优先级很靠前,因此常常会被用于数组操作,如a[i++]。并且由于其书写方便,在循环结构中也常常使用其来与a=a+1等价。

单就结果来说
a++、++aa=a+1、a+=1之间毫无任何区别。
a--、--aa=a-1、a-=1之间毫无任何区别。

标签:输出,自增,++,减一,运算符,--,自减
From: https://www.cnblogs.com/Syhang/p/16871630.html

相关文章

  • C语言逻辑运算符
    在C语言中,逻辑运算符有&&、||、!&&表示“与”的意思,需要两端的表达式的值都为true,该式的值才为true。||表示“或”的意思,两端的表达式的值只要有一端为true,该式的值就为t......
  • C语言逗号运算符
    在C语言中,逗号运算符虽然不起眼,但也是运算符的一种,而且在所有运算符中,逗号运算符的优先级是最低的。逗号用来连接两个表达式,并以其右边的表达式的值作为它的结果。逗号的......
  • C基础学习笔记——01-C基础第05天(运算符和流程结构语句)
    在学习C基础总结了笔记,并分享出来。有问题请及时联系博主:​​Alliswell_WP​​,转载请注明出处。01-C基础第05天(运算符和流程结构语句)目录:一、运算符(运算符优先级)二、程序流......
  • 用实例讲清JavaScript中的空合并运算符
    https://javascript.plainenglish.io/the-nullish-coalescing-operator-in-javascript-explained-with-examples-3e056e49a2c2原译|杨小二如今JavaScript具有许多强大的......
  • 运算符重载
    4.5运算符重载运算符重载概念:对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型4.5.1加号运算符重载作用:实现两个自定义数据类型相加的运算classPer......
  • 6 个 JavaScript 算术运算符
    英文|https://javascript.plainenglish.io/the-6-javascript-arithmetic-operators-you-need-to-know-about-4255ae8f2502翻译|杨小爱在您的开发项目中,您总是会遇到一些......
  • if语句和swicth语句和三元运算符
    if语句:首先if语句是判断语句,他的语法格式是这样的:if(判断条件){判断条件为真的时候,执行该语句}注意点:if判断条件存在隐式转换,转换为Boolean类型,真或者假;第二个注意点,除了......
  • javaScript简单的赋值运算符
    <----------------------------------------------赋值运算符------------------------------------------------------------>=号是赋值操作+=是加等于号,和(n=n+1)是......
  • 运算符
    运算符:对字面量或者变量进行操作的符号表达式:用运算符把字面量或者变量连接起来,符合Java语法的式子就可以称为表达式算数运算符+、-、*、/、%在代码中,只有整数参与的......
  • 8 个常用的JavaScript 比较运算符,你一定要知道
    英文|https://javascript.plainenglish.io/the-8-javascript-comparison-operators-you-need-to-know-cb952090d087翻译| 杨小爱1、相等我们将讨论的第一个比较运算符是......