безопасное копирование строки на си
Задался вопросом как безопасно копировать строку на си. Есть у меня строка str1 мне нужно ее скопировать в строку str2 но возможна ситуация когда в str1 не будет нуля в конце сроки, тогда возможна ситуация когда по указателю будет произведена операция перезаписи данных в области выходящей за приделы str2. Есть решение этой проблемы ?
Ответы (1 шт):
Автор решения: Генс
→ Ссылка
char b[10],a[]="Мама мыла раму";
int x,i;
for (x=0,i=0;x!=sizeof(b)-1;x++,i++)//Если а<b использовать sizeof(а)-1
b[x]=a[i];
b[x++]='\0';
printf("\"%s\" длина-%d размер-%d",b,strlen(b),sizeof(b));
//Вывод: "Мама мыла" длина-9 размер-10