evgeniy8705
@evgeniy8705
Повелитель вселенной

Как добавить элемент в массив (Си)?

Есть строка(массив символов). Необходимо обернуть ее. Переберу все символы с конца и буду по одному добавлять в новый массив.
Какая функция отвечает за добавления элементов в массив?

Нормальное ли решение?

char s[100];
int i;

printf("Input str");
gets(s):
for (i = strlen(s)-1; i >= 0; i--) {
  printf("%c". s[i]);
}
  • Вопрос задан
  • 12719 просмотров
Пригласить эксперта
Ответы на вопрос 2
gbg
@gbg
Любые ответы на любые вопросы
Начнем с того, что перевернуть строку задом наперед можно более гуманным способом - пройти с нулевого символа до середины, обменивая - первый с последним, второй - с предпоследним и так далее.
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Никакая. Алгоритм действий:

0) Определяем длину строки
1) выделяем память под новую строку
2) устанавливаем счетчик/указатель на нужные символы двух строк (последний символ для первой строки и первый символ для второй строки)
3) заносим символ в нужную ячейку (обычное приравнивание)
4) продолжаем цикл пока не дойдем до конца (или начала строки).
5) возвращаем результат
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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