关于自增自减运算符

外什么

int x = 0;

    printf("x=%d\n",x++);

    printf("x=%d\n",++x);

    return 0;

这里的x++输出为0,而在while语句里,a++表示数字增加1???????我真的想说,自增自减运算符,你永远都是我的噩梦!!!

黑巫
浏览 1547回答 2
2回答

onemoo

x++ 是后置自增,在第一个printf中取x++的值就是x当时的值,所以打印出0。在语句结束后,x的值是x+1。++x 是前置自增,在第二个printf中取++x的值就是x+1,所以会打印出2。如果代码中有 a++; 这样的语句,那么在这语句结束后,a肯定是自增1的。另外,如果单纯只是为了让变量自增,最好使用前置自增形式。后置自增由于涉及到临时变量,可能会有性能损失。
打开App,查看更多内容
随时随地看视频慕课网APP