Добавьте интервал для обугливания*

21
задан Vadim Kotov 18 August 2017 в 15:52
поделиться

3 ответа

Сначала преобразуйте интервал в char* использование sprintf():

char integer_string[32];
int integer = 1234;

sprintf(integer_string, "%d", integer);

Затем для добавления его к другому символу* используйте strcat():

char other_string[64] = "Integer: "; // make sure you allocate enough space to append the other string

strcat(other_string, integer_string); // other_string now contains "Integer: 1234"
25
ответ дан 29 November 2019 в 20:43
поделиться

Вы могли также использовать stringstreams.

char *theString = "Some string";
int theInt = 5;
stringstream ss;
ss << theString << theInt;

к строке можно тогда получить доступ с помощью ss.str();

10
ответ дан 29 November 2019 в 20:43
поделиться

Что-то как:

width = floor(log10(num))+1;
result = malloc(strlen(str)+len));
sprintf(result, "%s%*d", str, width, num);

Вы могли упростить len при помощи максимальной длины для целого числа в Вашей системе.

редактирование ой - не видело "++". Однако, это - альтернатива.

4
ответ дан 29 November 2019 в 20:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: