В коментариях родилась задачка, которая на мой взгляд, вполне заслуживает оформления отдельным постом:
Есть код на языке C
#include
#include
void something_wrong() {
//(1)
char * p;
strcpy(p, "Hello");
printf("%s World\n", p);
}
void some_other_code() {
}
int main()
{
some_other_code();
something_wrong();
return 0;
}
И соответственно вопросы:
- На 3 балла: Что не так с этим кодом.
- На 4 балла: Какую строку можно вписать на место (1) чтобы получить корректный код.
- На 5 баллов: как можно модифицировать some_other_code() для получения работающей программы, и какие требования к компилятору и среде исполнения при этом необходимы.