有没有办法将三个或更多变量与“int”中的值组合成一个字符串。假设我想将 a、b、c 的值组合在一个字符串中,然后使用字符串中的变量进一步打印这些值。
问问题
6021 次
1 回答
6
将三个整数放入一个字符串:
int numbers[3] = { 1, 2, 3 };
char string[1024];
sprintf(string, "%d %d %d", numbers[0], numbers[1], numbers[2]);
然后可以使用正常方式打印字符串。是打印到 asprintf()
的版本,就像打印到 a一样。printf()
char*
fprintf()
FILE*
正如 Jonathan Leffler 所观察到的,一个陷阱sprintf()
是您可能会溢出您的 char 缓冲区。出于这个原因,有一个snprintf()
允许您指定输入的最大长度:
snprintf(string, 1024, "%d %d %d", numbers[0], numbers[1], numbers[2]);
于 2013-09-26T15:08:57.237 回答