#8020: Об отсутствии пустоты

15:45 13.12.2011, IT happens


Да, товарищи, заработались мы, привыкли к умным компиляторам и IDE.


Помнится, на первом курсе университета я проходил факультативный курс программирования микроконтроллеров. Два дня дебажил задание, не понимая, почему стандартный «хеллоу-ворлд» на Си не компилится. В исступлении на третьи сутки обратился к гуру. Посмотрел он код мой, пожурил и отправил мануалы читать.


Сначала я вспылил: «Как так! Я к нему с простейшей просьбой, а он мне какие-то бумажки суёт!» Поостыв, принялся за чтение спецификации компилятора.


Оказалось, что в коде моём действительно имелся досадный баг. Я-то по наивности писал int main(), а вот в спецификации было указано, что все функции без параметров объявляются как [type] [name](void), и это обязательное требование. В обычном Cи компилятор сам подставлял «пустоту», а этому нужно было указывать явно.


С тех пор я научился читать документацию и лог вывода компилятора, включаю во время дебага все ворнинги и не успокаиваюсь, пока каждый не исправлю.



Загрузка...