簡體   English   中英

誰能解釋一下“->”是如何在#define 中實現的

[英]can anyone explain how the “->” is implemented in the #define

我正在使用這條線作為#define 進行參考設計

#define MEDIA_EXT_STATE "\"adv7611 12-004c\":1 -> \"40080000.tpg\":0[%d]"

sprintf function 使用它,然后將其傳遞給media_parse_setup_links() function。

sprintf(media_formats, MEDIA_EXT_STATE, 1);
ret = media_parse_setup_links(media, media_formats);

宏將MEDIA_EXT_STATE定義為字符串文字,類似於

#define FOOBAR "foo -> bar"

FOOBAR定義為字符串文字"foo -> bar" 也許您對轉義的"感到困惑,但這就像普通的字符串文字一樣:

std::cout << "\"123";

打印"123 .

要知道字符串中->的含義是什么,您必須查看media_parse_setup_links的實現或閱讀文檔。

它簡單地翻譯為:

 sprintf(media_formats, "\"adv7611 12-004c\":1 -> \"40080000.tpg\":0[%d]", 1);

沒有指針操作,因為它只是字符串的一部分。

刪除引號時,它變得更加明顯:

 sprintf(media_formats, "'adv7611 12-004c':1 -> '40080000.tpg':0[%d]", 1);

誰能解釋一下“->”是如何實現的

這只是文字。 它的“實現”方式與此相同:

std::string example = "->";

暫無
暫無

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

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