問題記錄:
C語言中,字串是否可以通過連續的常量創建直接編輯拼接在一起?
比如下述陳述句賦值:
const char *path = “this is string one” “this is string two”;
//賦值后 *p 指向的字串等于兩個陳述句拼接后的結果:
*p == “this is string onethis is string two”;
驗證:
1 #include <stdio.h> 2 3 #define AVAGO_FIRMWARE_PATH "/avago/firmware/" 4 5 int main(void) 6 { 7 // int phy_id = 0; 8 // int serdes_mode_line_1 = 0; 9 10 const char *path; 11 const char *fw_rev; 12 fw_rev = "0"; 13 path = AVAGO_FIRMWARE_PATH "sbus_master/%s/sbus_master.%s_%s.rom" "\n"; 14 printf(path,fw_rev,fw_rev,fw_rev); 15 16 return 0; 17 }
程式運行后結果如下圖所示:
三段字串產量未加任何連接符號,連續存盤并將字串常量地址賦值給了指標path,

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/20659.html
標籤:嵌入式
