变量中的格式说明符?

Fro*_*ode 0 c

我有这些变量:

char* name = "bobsux";    
int score = 100;
char* scoreHash = "f899139df5e1059396431415e770c6dd";
Run Code Online (Sandbox Code Playgroud)

使用格式说明符和printf打印这些,返回:

printf("name=%s&score=%d&score_hash=%s", name, score, scoreHash);
=> name=bobsux&score=100&score_hash=f899139df5e1059396431415e770c6dd
Run Code Online (Sandbox Code Playgroud)

如何创建一个返回相同的变量?尝试失败:

char* scoreData = ("name=%s&score=%d&score_hash=%s", name, score, scoreHash);
=> f899139df5e1059396431415e770c6dd
Run Code Online (Sandbox Code Playgroud)

我希望变量类似于printf返回,以便我可以将scoreData发送到Web服务器:

curl_easy_setopt(curl, CURLOPT_POSTFIELDS, scoreData);
Run Code Online (Sandbox Code Playgroud)

unw*_*ind 5

您可以使用snprintf()将文本格式化为字符数组:

char scoreData[128];

snprintf(scoreData, sizeof scoreData, "name=%s&score=%d&score_hash=%s\n",
         name, score, scoreHash);
Run Code Online (Sandbox Code Playgroud)