自增自減與指針相關(guān)

自增自減

簡單的使用i++不會產(chǎn)生什么問題怒竿,比較麻煩的是使用變量與變量自增(自減)混在一起的時候,下面是關(guān)于這個問題的分析。

// 自增自減寫在變量前后的區(qū)別
// 如果++寫在變量的前面,則會先將變量自增弃锐,再用自增后的結(jié)果參與運算
// 如果++寫在變量的后面,則會先將變量的值參與運算三热,再將變量自增
// 自減與自增一樣
int a = 10;     // a -> 10
int b = a++;    // b -> 10  a -> 11
int c = ++a;    // c -> 12  a -> 12
printf("a --> %i\n", a);    // a --> 12
printf("b --> %i\n", b);    // b --> 10
printf("c --> %i\n", c);    // c --> 12

int a = 10;         // a --> 10
// int b = (a++) + (++a);           // a --> 12     b --> 22
// int b = (a++) + (a++);           // a --> 12     b --> 21 
int b = (++a) + (++a);              // a --> 12 b --> 23 
--------------------- 
作者:crazy_zhangcong 
來源:CSDN 
原文:https://blog.csdn.net/crazy_zhangcong/article/details/87916766 
版權(quán)聲明:本文為博主原創(chuàng)文章念祭,轉(zhuǎn)載請附上博文鏈接!

指針變量

指針變量進行自增自減時启上,其指向位置邢隧。

獲取字符串的長度

#include <stdio.h>

#define MAX 1024

int main()
{
        char str[MAX];
        char *target = str;
        int length = 0;

        printf("請輸入一個字符串:");
        fgets(str, MAX, stdin);

        while (*target++ != '\0')
        {
                length++;
        }

        printf("您總共輸入了 %d 個字符!\n", length - 1);   // 注意length -1

        return 0;
}

注意: fgets 函數(shù)會把換行符('\n')也一并讀取進去冈在。

考慮一種簡單地情況倒慧,字符串str只有一個字符。

第一次循環(huán):

  • 自增的優(yōu)先級高于取值運算符,執(zhí)行target++纫谅。前面寫到炫贤,如果++寫在變量的后面,則會先將變量的值參與運算付秕,再將變量自增兰珍,則實際上語句*target++相當(dāng)于執(zhí)行*target;,此時target →(指向) <首地址>询吴,因為有一個字符俩垃,所以判斷為真,判斷完后汰寓,執(zhí)行target口柳,指針位置加一,此時target →(指向) <第二個元素地址>
  • 進入循環(huán)體有滑。
  • 循環(huán)體內(nèi)length加一跃闹。

第二次循環(huán):

  • 根據(jù)先使用后自增的原則,執(zhí)行判斷語句時毛好,指針指向第二個元素'\n'(前面提到望艺,fgets函數(shù)會把回車也讀進來),判斷為真肌访,然后指針加一找默,進入循環(huán)體。
  • 循環(huán)體結(jié)束后吼驶,length = 2惩激。

第三次循環(huán):

  • 此時指針指向'\0',判斷為假蟹演,不執(zhí)行循環(huán)體风钻,打印結(jié)果。由于多計算了'\n'酒请,因此在printf的時候要減去骡技。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市羞反,隨后出現(xiàn)的幾起案子布朦,更是在濱河造成了極大的恐慌,老刑警劉巖昼窗,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件是趴,死亡現(xiàn)場離奇詭異,居然都是意外死亡膏秫,警方通過查閱死者的電腦和手機右遭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門做盅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缤削,“玉大人窘哈,你說我怎么就攤上這事⊥じ遥” “怎么了滚婉?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長帅刀。 經(jīng)常有香客問我让腹,道長,這世上最難降的妖魔是什么扣溺? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任骇窍,我火速辦了婚禮,結(jié)果婚禮上锥余,老公的妹妹穿的比我還像新娘腹纳。我一直安慰自己,他們只是感情好驱犹,可當(dāng)我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布嘲恍。 她就那樣靜靜地躺著,像睡著了一般雄驹。 火紅的嫁衣襯著肌膚如雪佃牛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天医舆,我揣著相機與錄音俘侠,去河邊找鬼。 笑死蔬将,一個胖子當(dāng)著我的面吹牛兼贡,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播娃胆,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼遍希,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了里烦?” 一聲冷哼從身側(cè)響起凿蒜,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎胁黑,沒想到半個月后废封,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡丧蘸,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年漂洋,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡刽漂,死狀恐怖演训,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情贝咙,我是刑警寧澤样悟,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站庭猩,受9級特大地震影響窟她,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蔼水,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一震糖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧趴腋,春花似錦吊说、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至穿剖,卻和暖如春蚤蔓,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背糊余。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工秀又, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人贬芥。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓吐辙,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蘸劈。 傳聞我的和親對象是個殘疾皇子昏苏,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • 指針是C語言中廣泛使用的一種數(shù)據(jù)類型。 運用指針編程是C語言最主要的風(fēng)格之一威沫。利用指針變量可以表示各種數(shù)據(jù)結(jié)構(gòu)贤惯; ...
    朱森閱讀 3,430評論 3 44
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,094評論 1 32
  • 第十章 指針 1. 地址指針的基本概念: 在計算機中,所有的數(shù)據(jù)都是存放在存儲器中的棒掠。一般把存儲器中的一個字節(jié)稱為...
    堅持到底v2閱讀 1,066評論 2 3
  • 30歲左右是一個重要的分水嶺孵构。 可能會忽然醒悟,領(lǐng)悟到什么是熱鬧烟很,什么是豐富颈墅。 也可能還樂呵著蜡镶,今朝有酒今朝醉,人...
    從容小記閱讀 421評論 2 2
  • 【江湖說?學(xué)習(xí)日記】 [打卡寶寶]:洋芋. [打卡日期]:2019/05/21 [累計堅持]:這是我堅持學(xué)習(xí)的第1...
    洋芋g閱讀 223評論 0 0