C语言运算——自加自减运算

一、自加自减运算的符号:++,--

自加自减运算主要分为前缀、后缀。

因此,运算的结果也不一样。

以++为例子,若定义了两个整型变量x,y,经过以下运算输出x,y的值。

  1. x++;
  2. ++x;
  3. y=x++;
  4. y=++x;

自加自减运算最后的结果主要体现在表达式的变化,对于变量本身都是要变化的,即加1。

实验操作如下:

1)

#include
int main(void)
{
	int x=0,y;
	x++;
	printf("%d",x);//输出的是变量的值
	return 0;
 }

C语言运算——自加自减运算_第1张图片

 

#include
int main(void)
{
	int x=0,y;
	printf("%d",x++);//输出的表达式的值
	return 0;
 }

C语言运算——自加自减运算_第2张图片 

 2)

#include
int main(void)
{
	int x=0,y;
	++x;
	printf("%d",x);//输出的变量的值
	return 0;
 }

C语言运算——自加自减运算_第3张图片

#include
int main(void)
{
	int x=0,y;
	printf("x=%d,++x=%d\n",x,++x);//前者输出变量的值,后者输出表达式子的值
	return 0;
 }

C语言运算——自加自减运算_第4张图片

3)

要注意的是,y=x++等价于: 

y=x;

x=x+1;

对于y来说,就是把表达式的结果赋给y。

#include
int main(void)
{
	int x=0,y;
	y=x++;
	printf("x=%d,y=%d\n",x,y);//输出变量的值
	return 0;
 }

C语言运算——自加自减运算_第5张图片

区分输出表达式的情况

#include
int main(void)
{
	int x=0,y;
	printf("x=%d,x++=%d\n",x,x++);//注意!区分这里输出的前者是变量,后者是表达式
	return 0;
 }

C语言运算——自加自减运算_第6张图片 

那么,y=++x就等价于:

x=x+1;

y=x;

对于y来说就是把++x表达式子的结果赋给y。

这里不再对此进行说明。

自减算法也是一样的道理。

总结:

前缀的自加自减运算表达式变化规律是——先变量的值=变量的原始值+1;表达式的值=变量的值。

后缀的自加自减运算变化规律是——表达式的值=变量的原始值;变量的值=变量的原始值+1。

要注意,输出的要求或者进行运算的要求是表达式的值还是变量的值。

你可能感兴趣的:(c语言,开发语言)