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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

C語言 為什么判斷同一個數(shù),switch不能判對,而if能呢

查看數(shù): 1867 | 評論數(shù): 8 | 收藏 1
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2023-11-3 15:27

正文摘要:

問題如圖,IR_Val的定義是uint32_t,case的程序是stm8能用的,我現(xiàn)在要移到stm32上,keil給我判錯,請問有知道這是什么問題嗎?先謝謝大家

回復(fù)

ID:382454 發(fā)表于 2023-11-4 16:37
應(yīng)該可以的,可能你這個數(shù)有點問題,,char 還是int還是浮點型。也可以把這幾句單獨在調(diào)試一下,就一目了然了。
ID:883242 發(fā)表于 2023-11-4 16:13
billaj 發(fā)表于 2023-11-4 15:53
難道是CASE只能是16位???

你貼的代碼確實只比較了低16位,也可能高16位都一樣,前面另外判斷了,代碼不全不能確定。
ID:388929 發(fā)表于 2023-11-4 15:53
難道是CASE只能是16位???
ID:883242 發(fā)表于 2023-11-3 19:00
wulin 發(fā)表于 2023-11-3 18:54
switch()括號中只可以允許int、char、bool、enum類型,別的類型不可以。

但是你說的跟樓主描述的完全相反,uint32_t在STM8編譯器里面是long,不符合你的要求,但是人家好用。在MDK里面是unsigned int類型,樓主的數(shù)據(jù)最高位都是0,也就是說都是正數(shù),與int類型完全等效。
ID:213173 發(fā)表于 2023-11-3 18:54
switch()括號中只可以允許int、char、bool、enum類型,別的類型不可以。
ID:883242 發(fā)表于 2023-11-3 18:50
在MDK中,右鍵項目,彈出options for target,然后在c/c++標(biāo)簽中的Misc Controls里面加上“--asm”就可以輸出匯編文件了,在obj目錄里面的s文件就是c語言對應(yīng)的匯編。
ID:883242 發(fā)表于 2023-11-3 18:22
可以看一下生成的匯編代碼。

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

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

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