Я хочу добавить переменное число пробелов в строку в C и хотел бы знать, есть ли стандартный способ сделать это, прежде чем я сам его реализую.
До сих пор я использовал некоторые уродливые способы сделать это:
- Предположим, что до того, как я вызвал любую из нижеперечисленных функций, я позаботился о том, чтобы выделить достаточное количество памяти для пробелов, которые я хочу объединить
Это один из способов, которым я использовал:
add_spaces(char *dest, int num_of_spaces) {
int i;
for (i = 0 ; i < num_of_spaces ; i++) {
strcat(dest, " ");
}
}
Это один из лучших в производительности, но также не выглядит стандартным:
add_spaces(char *dest, int num_of_spaces) {
int i;
int len = strlen(dest);
for (i = 0 ; i < num_of_spaces ; i++) {
dest[len + i] = ' ';
}
dest[len + num_of_spaces] = '\0';
}
Итак, у вас есть стандартное решение для меня, поэтому я не изобретаю велосипед?