ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
21 июля
41915 Топик полностью
VVB (19.10.2005 10:35, просмотров: 1) ответил VVB на Вопрос по Softune Workbench для Fujitsu
Обнаружился интересный глюк линкера. Очень грубая ошибка. Версия 3.5. Для простоты, пусть проект состоит из 2 файлов: test1.c и test2.c содержимое test1.c: void func1(int); // функция имеет один параметр типа int void func1(int c) { c=5; // для примера; может быть что-то ещё } содержимое test2.c: void main(void); extern void func1(void); // обратите внимание!!! нет параметров void main(void) { func1(); } Компиляция и линковка этих файлов идёт без ошибок, никаких предупреждений, хотя есть очень грубая ошибка, приводящая к неработоспособности программы. В приведённом примере, возможно, программа будет работать, а вот если будет обратная ситуация (функция не имеет параметров, но вызывается с параметрами) будет сбой. Имейте в виду этот глюк.