2012-10-22 80 views
0

我有这些变量:变量中的格式说明符?

char* name = "bobsux";  
int score = 100; 
char* scoreHash = "f899139df5e1059396431415e770c6dd"; 

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

printf("name=%s&score=%d&score_hash=%s", name, score, scoreHash); 
=> name=bobsux&score=100&score_hash=f899139df5e1059396431415e770c6dd 

我怎样才能使返回相同的变量?失败的尝试:

char* scoreData = ("name=%s&score=%d&score_hash=%s", name, score, scoreHash); 
=> f899139df5e1059396431415e770c6dd 

我希望变量像printf的回报,这样我就可以发送scoreData到Web服务器:

curl_easy_setopt(curl, CURLOPT_POSTFIELDS, scoreData); 

回答

5

您使用snprintf()的文本字符数组的格式:

char scoreData[128]; 

snprintf(scoreData, sizeof scoreData, "name=%s&score=%d&score_hash=%s\n", 
     name, score, scoreHash);