Маленькая задачка на C

Dec 24, 2016 11:53

В коментариях родилась задачка, которая на мой взгляд, вполне заслуживает оформления отдельным постом:

Есть код на языке 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() для получения работающей программы, и какие требования к компилятору и среде исполнения при этом необходимы.

prog, загадки

Previous post Next post
Up