簡體   English   中英

gcc預處理器中的destringification

[英]Destringification in the gcc preprocessor

是否可以編寫一個解析字符串文字參數的gcc宏? 我知道#可能性相反。 可以逆轉嗎?

例如, __func__以字符串文字的形式求值為當前函數的名稱。 我可以刪除它周圍的雙引號嗎?

不,不可能使用標准C / C ++預處理器將"foo"轉換為foo 如果你絕對需要這個,你需要創建一個外部預處理程序,類似於Qt對其moc工具的作用。

不完全是主題,但D語言恰好具有此功能 - 它被稱為mixins 您可以在編譯時執行任意字符串處理代碼,並使用mixin關鍵字將結果“粘貼”到源文件中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM