c++中, 前自增和后自增的分别

发布时间:2024-05-23 22:35 发布:上海旅游网

问题描述:

如题
在c++中
我写了这样一段代码

int main()
{
int a = 10;
int b = 10;
std::cout << a++ << std::endl;
std::cout << ++b << std::endl;

return 0;
}

结果是
10
11

到底他们有蛇麼分别呢?

问题解答:

前自增即++i型:先自加后取值

后自增即i++型:先取值后自加

//参考代码如下:
#include<stdio.h>
int main()
{
int i=0;
while(i++<3)//先比较再自加 
printf("%d ",i);
printf("\n");
i=0;
while(++i<3)//先自加再比较 
printf("%d ",i);
return 0;
}
/*运行结果
1 2 3
1 2
*/

std::cout << a++ << std::endl; 中 是a++ 意思为在程序第一次使用了a后a才自己增加1 在该语句后如果再加一句 cout<<a<<endl; 此时a就成了11

std::cout << ++b << std::endl; 中 则是在第一次使用b++时b就自己增加1 变成11后 程序再使用b

a++是先用后加,用的时候a=10, std::cout << a++ << std::endl;这句显示10,这句完了后a=11;
++b是先加后用,b=10,加后b=11,std::cout << ++b << std::endl;这句显示11

热点新闻