Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Нет описания функции isEven






printf(" Chislo a = %d - chet\n", a);

else

printf(" Chislo a = %d - nechet\n", a);

getch();

}

//int isEven (int a) { return 0 == a % 2; }

 

В процессе компиляции этой программы ошибок не будет обнаружено, поскольку вся необходимая компилятору информация о функции isEven дана в прототипе (имя функции, тип возвращаемого ею значения, количество, имена и типы ее формальных параметров).

Однако на этапе сборки компоновщику потребуется определение функции isEven, которое отсутствует (закомментировано) в программе, что вызовет появление соответствующего диагностического сообщения (рис. 13). Внимательное изучение содержимого окна Output (рис. 14) показывает, что программа действительно успешно скомпилировалась, а фатальная ошибка произошла при компоновке.

Для того чтобы исправить ошибку в нашем случае, достаточно убрать знак комментария с последней строки кода в данной программе, после чего следует повторно сделать сборку приложения и проверить его работу. Работа программы после исправления ошибок показана на рисунке 15.



 

 
 

Рисунок 13 Сообщение компоновщика об ошибке

 

 
 

Рисунок 14. Сообщения компилятора и компоновщика в окне Output

 

 
 

Рисунок 15. Работа программы, после исправления ошибок

 

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.