[英]Making Format String with sprintf
我想通過為字符串輸入指定MAX_LENGTH
來創建將在scanf
使用的格式字符串。 我有以下內容,但編譯器說這是錯誤的:
const int MAX_LENGTH = 50;
char format[9];
sprintf(format, "\%%d[^\n]s", MAX_LENGTH);
編譯器說格式字符串不使用data參數。 第一個%
應該被轉義,第二個應該是%d
一部分,應該從MAX_LENGTH
讀入。 我該如何做到這一點? 順便說一下,格式字符串應該讀取最多MAX_LENGTH
字符,直到達到換行符。
應使用%%
, 而非 \\%
來轉義%符號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.