Я новичок в языке C... Просто хочу спросить, как включить связывание библиотеки с плавающей запятой в TurboC?
Как включить привязку библиотеки с плавающей запятой в TurboC?
Ответы (1)
Из часто задаваемых вопросов о comp.os.msdos.programmer:
«Форматы с плавающей запятой не связаны» — это ошибка времени выполнения Borland (Borland C или C++, Turbo C или C++). Компиляторы Borland стараются быть умными и не компоновать библиотеку операций с плавающей запятой (f-p), если она вам не нужна. Увы, все они принимают неправильное решение. Одним из распространенных случаев является то, что вы не вызываете никаких функций f-p, но у вас есть
%f
или другие форматы f-p в вызовахscanf()
илиprintf()
. Лекарство состоит в том, чтобы вызвать функцию f-p или, по крайней мере, заставить ее присутствовать в ссылке.Для этого определите эту функцию где-нибудь в исходном файле, но не вызывайте ее:
static void forcefloat(float *p) { float f = *p; forcefloat(&f); }
Он не обязательно должен быть в модуле с основной программой, если он находится в модуле, который будет включен в ссылку.