Мне задали этот вопрос в MS-интервью:
Найти ошибки в программе ниже, которая должна возвращать новую строку с добавленным к ней \n
.
char* AddnewlinetoString(char *s)
{
char buffer[1024];
strcpy(buffer,s);
buffer[strlen(s)-1] = '\n';
return buffer;
}
Я попытался написать код сам и смог заставить его работать, сделав буферную переменную global и имеющую buffer[strlen(s)] = '\n'
. Но не знал, что в нем было много других ошибок.