看板 ASM 關於我們 聯絡資訊
請教一下各位前輩, 在Keil C51中, 可以透過定義新的putchar()來取代stdio.h原本的putchar(), 然後stdio.h中的printf(), puts()等function中, 就會去使用新定義的puchar(), 而不會使用原本的putchar(), 在stdio.h中的這種function好像叫weak function.. 也就是說, 如果有定義新的, 就使用新的, 沒有的話就使用weak function.. 請問, 有人知道怎麼在Keil C51 (for 8051)做出這種function嗎? 例如: 我有一個函式void func(char arg); 裡面只有做很簡單的動作 User可以定義一個一樣名稱的function來做其它較複雜的動作.. 如果user沒有定義, Compiler就用我的, 如果user有定義, Compiler就用user定義的, 請問有人知道嗎? 謝謝各位 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.195.193.30 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1546662626.A.1CC.html
suninrain: 沒有看過,可是類似的有在define macro看過~ 01/07 11:56
MaxHaru: 請問macro要怎麼做呢? 01/08 15:40
NAMESTANLY: __weak void func(char arg); 01/10 16:39
MaxHaru: 有試過, 但會有error產生; missing ';' before 'void' 01/13 23:44