C语言 ++i 和i++面试题
时间: 2023-09-21 19:03:25 浏览: 114
在C语言中,++i和i++都是用于增加变量i的值的运算符。但是它们之间有一些细微的差别。
++i是前缀递增运算符,它将变量i的值增加1,并且返回增加后的值。也就是说,++i将在使用变量i之前先将其值增加1。
i++是后缀递增运算符,它也将变量i的值增加1,但是返回增加前的值。也就是说,i++将在使用变量i之后才将其值增加1。
以下是一个简单的例子,展示了++i和i++的不同:
```c
#include <stdio.h>
int main() {
int i = 0;
printf("i++: %d\n", i++); // 输出 0
printf("i: %d\n", i); // 输出 1
i = 0; // 重新初始化 i
printf("++i: %d\n", ++i); // 输出 1
printf("i: %d\n", i); // 输出 1
return 0;
}
```
在第一个printf语句中,使用了i++,它返回变量i的值0,然后将其值增加1,所以在第二个printf语句中,变量i的值变成了1。
在第三个printf语句中,使用了++i,它将变量i的值先增加1,然后返回增加后的值1,所以在第四个printf语句中,变量i的值也是1。
在实际应用中,++i和i++的选择取决于具体的需求。如果需要在使用变量之前就将其值增加1,就应该使用++i;如果需要在使用变量之后才将其值增加1,就应该使用i++。
阅读全文