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;
}
運(yùn)行結(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;
}
運(yùn)行結(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;
}
運(yùn)行結(jié)果:
a = 0
a = 1
a = 2
a = 2
從運(yùn)行結(jié)果可以看出,a++和++a是有區(qū)別的:
a++是先讀取a的值,再讓a的值增加1;
++a是先讓a的值增加1,再讀取a的值。
相關(guān)文章
C字符串操作函數(shù)實現(xiàn)方法小結(jié)
這篇文章主要介紹了C字符串操作函數(shù)實現(xiàn)方法,實例總結(jié)了C語言字符串操作的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下2015-04-04
C++ std::initializer_list 實現(xiàn)原理解析及遇到問題
這篇文章主要介紹了C++ std::initializer_list 實現(xiàn)原理勘誤,本文通過源碼解析給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-02-02

