C語言菜鳥基礎(chǔ)教程之a(chǎn)++與++a
(一)a++
在C語言或其它語言中,++符號表示“自加”,就是變量在原來的基礎(chǔ)上加1。
例1:
a = 0; a++;
則此時a的值為1。
同樣的道理,--表示”自減”。
例2:
a = 100; a--;
則此時a的值為99。
注意,程序語言里沒有”自乘”和”自除”的概念。
驗證程序:
#include <stdio.h> int main() { int a = 0; // 給a賦值 a++; printf("After ++, a = %d\n", a); a = 100; // 重新給a賦值 a--; printf("After --, a = %d\n", a); return 0; }
運行結(jié)果:
After ++, a = 1 After --, a = 99
(二)++a
除了a++表示自加外,++a也表示自加。同理--a表示自減
驗證程序:
#include <stdio.h> int main() { int a = 0; // 給a賦值 ++a; printf("After ++, a = %d\n", a); a = 100; // 重新給a賦值 --a; printf("After --, a = %d\n", a); return 0; }
運行結(jié)果:
After ++, a = 1 After --, a = 99
(三)a++與++a的區(qū)別
既然a++與++a都是讓a自加,那么二者是否完全一樣呢?
先看一個程序:
#include <stdio.h> int main() { int a = 0; printf("a = %d\n", a++); printf("a = %d\n", a); printf("a = %d\n", ++a); printf("a = %d\n", a); return 0; }
運行結(jié)果:
a = 0
a = 1
a = 2
a = 2
從運行結(jié)果可以看出,a++和++a是有區(qū)別的:
a++是先讀取a的值,再讓a的值增加1;
++a是先讓a的值增加1,再讀取a的值。
相關(guān)文章
C++中l(wèi)ist的使用方法及常用list操作總結(jié)
這篇文章主要介紹了C++中l(wèi)ist的使用方法及常用list操作總結(jié)的相關(guān)資料,需要的朋友可以參考下2017-06-06