如題例如:void _do_cinit (void)#pragma code _entry_scn=0x000000等有個字打錯了,是前而不是錢。中間是用來代替空格我是明白的
3 回答

絕地無雙
TA貢獻1946條經驗 獲得超4個贊
要定義一個標識符,但要用到關鍵字的話通常就在關鍵字的前面加個下劃線來和關鍵字分開,這里的do已經不是關鍵字了,而是用戶定義的標識符。
例如要做一個用戶自己的輸出函數,函數名就用 __printf()一樣的道理。

郎朗坤
TA貢獻1921條經驗 獲得超9個贊
1、一般情況是標識該函數或關鍵字是自己內部使用的,與提供給外部的接口函數或關鍵字加以區分。
這只是一種約定,實際非要把這些函數或關鍵字提供給外部使用,語法上也沒有限制。
2、如果下劃線加在最前面,一般是微軟的習慣,代表這個函數有相應的去掉下劃線的函數或命令替代,比如:
VC中嵌入匯編:
__ASM xor eax, eax
可以寫成 ASM xor eax, eax
比如_lopen可用CreateFile替代

尚方寶劍之說
TA貢獻1788條經驗 獲得超4個贊
下劃線是一種合法的字符
一般用來在變量里面代替空格
比如一個變量叫 sPersonFirstName
有人覺得看起來比較費勁
就把它改成 s_Person_First_Name
- 3 回答
- 0 關注
- 1163 瀏覽
添加回答
舉報
0/150
提交
取消