找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1264|回復(fù): 5
收起左側(cè)

單片機(jī)C語(yǔ)言減法指令問(wèn)題

[復(fù)制鏈接]
ID:1017978 發(fā)表于 2022-4-16 05:18 來(lái)自觸屏版 | 顯示全部樓層 |閱讀模式
程序:if(k3==0){delay(20);if(k3==0){i=i+2;if(i≥10){i=10;}}}
if(k4==0){delay(20);if(k4==0){i=i-2;if(i≤0){i=0;}}}

問(wèn):為什么減到小于0后,i不等于0,而是一個(gè)很大的數(shù)。
回復(fù)

使用道具 舉報(bào)

ID:91150 發(fā)表于 2022-4-16 10:30 | 顯示全部樓層
本帖最后由 wjhhhhh 于 2022-4-16 10:32 編輯

小于、等于0后繼續(xù)減2就變成了65533(0xFFFD,對(duì)應(yīng)著char類(lèi)型0~65535)。if(k4==0){i=i-2;if(i≤0){i=0;}}改成if((k4==0)&&(i>=2)){i=i-2;} 試一試。
回復(fù)

使用道具 舉報(bào)

ID:301191 發(fā)表于 2022-4-16 16:55 | 顯示全部樓層
頂一下
回復(fù)

使用道具 舉報(bào)

ID:883242 發(fā)表于 2022-4-16 19:26 | 顯示全部樓層
wjhhhhh 發(fā)表于 2022-4-16 10:30
小于、等于0后繼續(xù)減2就變成了65533(0xFFFD,對(duì)應(yīng)著char類(lèi)型0~65535)。if(k4==0){i=i-2;if(i≤0){i=0;}} ...

關(guān)鍵問(wèn)題在于i的類(lèi)型,如果是unsigned那么你寫(xiě)的對(duì),如果是signed那么樓主寫(xiě)的對(duì),不用改,看到很大的數(shù)很可能是IDE顯示的問(wèn)題,不是寫(xiě)的有問(wèn)題。
回復(fù)

使用道具 舉報(bào)

ID:1017978 發(fā)表于 2022-4-17 19:18 來(lái)自觸屏版 | 顯示全部樓層
wjhhhhh 發(fā)表于 2022-4-16 10:30
小于、等于0后繼續(xù)減2就變成了65533(0xFFFD,對(duì)應(yīng)著char類(lèi)型0~65535)。if(k4==0){i=i-2;if(i≤0){i=0;}} ...

有用,謝了,老哥
回復(fù)

使用道具 舉報(bào)

ID:1017978 發(fā)表于 2022-4-17 19:18 來(lái)自觸屏版 | 顯示全部樓層
Hephaestus 發(fā)表于 2022-4-16 19:26
關(guān)鍵問(wèn)題在于i的類(lèi)型,如果是unsigned那么你寫(xiě)的對(duì),如果是signed那么樓主寫(xiě)的對(duì),不用改,看到很大的數(shù) ...

有用,我兩個(gè)都試了一下,確實(shí)是,謝了,老哥
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表