久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1594|回復: 5
收起左側

C語言里面這種帶括號的宏定義有什么作用

[復制鏈接]
ID:700956 發(fā)表于 2023-4-7 12:44 | 顯示全部樓層 |閱讀模式
  • #define                C_PORTA                                        (PORTA)
  • #define                C_PORTB                                        (PORTB)
  • #define                C_PORTC                                        (PORTC)
  • #define                CST_KEY1_BIT                        (C_PORTB & C_KEY_BIT6)                        //定義按鍵地址


像這種,定義的時候最后的參數帶括號是啥意思?看不太懂
下面是原貼。
http://www.zg4o1577.cn/bbs/dpj-226114-1.html



回復

使用道具 舉報

ID:69038 發(fā)表于 2023-4-7 16:55 | 顯示全部樓層
#define 即 1(源 )映射到 2(目標)上 即在“PORTA”出現的在方用“C_PORTA"代替。至于參數帶括號,應無差別,至少Keil C51是這樣的
回復

使用道具 舉報

ID:883242 發(fā)表于 2023-4-7 20:12 | 顯示全部樓層
用括號包起來是防止展開后發(fā)生歧義的,括號還是很簡單的,你還沒見過用do {} while(0)把幾條語句包起來防止展開后發(fā)生歧義的。
回復

使用道具 舉報

ID:291668 發(fā)表于 2023-4-7 20:43 | 顯示全部樓層
沒啥區(qū)別,編譯結果一樣的。可能是個人習慣吧
回復

使用道具 舉報

ID:485350 發(fā)表于 2023-4-8 09:39 | 顯示全部樓層
#define CALC(X)  X + 3
   VALUE = (CALC(1) * 3)
   展開 VALUE = 1 + 3 * 3      結果VALUE為10

#define CALC(X) (X + 3)
   VALUE = (CALC(1) * 3)
   展開 VALUE = ((1 + 3) * 3)    結果VALUE為12
回復

使用道具 舉報

ID:59202 發(fā)表于 2023-4-8 20:18 | 顯示全部樓層
define后面的表達式用括號括上是正確且嚴謹的寫法,三樓說的是對的
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久久久久久久久三级 | www.欧美 | 免费a级毛片在线播放 | 久久国产精品久久久久久久久久 | 91国产视频在线观看 | 欧美一级做性受免费大片免费 | 日韩成人精品在线 | 一区二区三区在线电影 | 九九导航 | av看片| 午夜影院在线观看 | 日韩中文字幕视频 | 国产性生活一级片 | 国产一区二区三区四区 | 亚洲日日 | 久久精品| 91九色网站 | 亚洲欧美日韩中文字幕一区二区三区 | av在线免费不卡 | 国产精品欧美一区二区 | 国产一区二 | 欧美日韩电影一区 | 精品久久久久久久人人人人传媒 | 久久久国产一区二区三区 | 伊人看片 | 日本一区二区高清不卡 | 久久不射电影网 | 男女视频在线观看网站 | 99国产精品久久久久老师 | 99精品视频免费观看 | 亚洲区一区二 | 日日夜夜精品免费视频 | 久久久区 | 欧美黑人国产人伦爽爽爽 | www.激情.com| 久久亚洲综合 | 欧美黑人狂野猛交老妇 | 国产一区在线免费观看 | 亚洲综合色网站 | 亚洲视频免费在线观看 | 久久国产99 |