Как объединить string и int в C?
мне нужно сформировать строку, внутри каждой итерации цикла, который содержит индекс цикла i:
for(i=0;i<100;i++) {
// Shown in java-like code which I need working in c!
String prefix = "pre_";
String suffix = "_suff";
// This is the string I need formed:
// e.g. "pre_3_suff"
String result = prefix + i + suffix;
}
Я пробовал использовать различные комбинации strcat и itoa не повезло.
3 ответа:
строки-это тяжелая работа в C.
int main() { int i; char buf[12]; for (i = 0; i < 100; i++) { sprintf(buf, "pre_%d_suff", i); // puts string into buffer printf("%s\n", buf); // outputs so you can see it } }The
12достаточно байт для хранения текста"pre_"текст"_suff"строка из двух символов ("99") и нулевой Терминатор, который идет в конце строковых буферов C.этой расскажу вам, как использовать
sprintf, но я предлагаю хорошую книгу C!