Я прочитал, что сохранение строки в массиве символов (с нулевым завершением) позволяет впоследствии манипулировать строкой (в отличие от указателя на строковый литерал).Манипулировать массив символов как строку в c
#include <stdio.h>
int main()
{
char s[10]="Stack";
s[9]='a'; // a gets stored in array and if index is less than 6 string gets changed
printf("%s\n",s);
return 0;
}
Выход: Stack
Это работает до тех пор, как индекс манипулировать меньше длины строки.
Это означает, что содержимое строки (и, следовательно, размер) не может быть изменено, даже если есть пустое пространство?
Есть ли какой-либо прямой способ (не используя функции), чтобы добавить 'a' в нужное положение?
Можете ли вы объяснить больше, что вы хотите сделать? – pablo1977
короткий ответ «нет» –
Я понятия не имею, о чем вы спрашиваете. Знаете ли вы, что 0-терминатор делает все функции предполагаемыми, что в строке больше символов? –