欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: C語言定義一個變量uchar unsigned=i;怎么實現(xiàn)i++ i-- [打印本頁]

作者: 無限飛翔    時間: 2021-6-12 10:39
標題: C語言定義一個變量uchar unsigned=i;怎么實現(xiàn)i++ i--
定義一個變量uchar unsigned=i;怎么實現(xiàn)i++  i--,都的0-50變化,++還好辦,大于50,等于0,就是--,小于0,變量i就溢出了,不知道 跑到哪里去了,這樣的情況怎么搞呢?

作者: xuyaqi    時間: 2021-6-12 16:14
把 i 不要設(shè)置為無符號uchar,設(shè)置成有符號char,或者 int。
作者: 無限飛翔    時間: 2021-6-12 16:31
xuyaqi 發(fā)表于 2021-6-12 16:14
把 i 不要設(shè)置為無符號uchar,設(shè)置成有符號char,或者 int。

懵圈啦!
一直認為cahr是兩個字節(jié),變量較比,我是為了省空間都設(shè)成了ucahr變量。
作者: 黃youhui    時間: 2021-6-12 16:57
unsigned這是一個關(guān)鍵字,你unsigned = i是什么操作
作者: 無限飛翔    時間: 2021-6-12 17:26
黃youhui 發(fā)表于 2021-6-12 16:57
unsigned這是一個關(guān)鍵字,你unsigned = i是什么操作

這是我貼錯了,應該是
#define uchar unsigned char
uchar i;
作者: wulin    時間: 2021-6-13 08:30
//采用不同數(shù)據(jù)類型代碼寫法不同

        unsigned char i;

        if(++i>50)i=0;

        if(--i>50)i=50;//當i=0時再減1等于255
/***********************/
        char i;

        if(++i>50)i=0;

        if(--i<0)i=50;
作者: 無限飛翔    時間: 2021-6-15 21:26
wulin 發(fā)表于 2021-6-13 08:30
//采用不同數(shù)據(jù)類型代碼寫法不同

        unsigned char i;

明白了,就是這么簡單!
作者: 無限飛翔    時間: 2021-6-16 09:07
wulin 發(fā)表于 2021-6-13 08:30
//采用不同數(shù)據(jù)類型代碼寫法不同

        unsigned char i;

char i;

        if(++i>50)i=0;

        if(--i<0)i=50;
按個改,執(zhí)行i++沒有問題,
i--就有點間題了,5,4,3, 2, 1, 0, /, 50
中間加了個  /  這個啥情況?
作者: sustlixin    時間: 2021-6-16 15:29
無限飛翔 發(fā)表于 2021-6-16 09:07
char i;

        if(++i>50)i=0;

i++/++i , i--/--i,這兩個的運算處理過程不一樣的,一個是先判定后運算,一個是先運算后判定,所以,我覺得,開始出現(xiàn)的溢出,或者不正常的顯示,都是因為對運算符前置與后置的理解誤差導致。
作者: 無限飛翔    時間: 2021-6-17 18:07
搞定




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1