Где определение функции nanf () на linux - PullRequest
0 голосов
/ 10 декабря 2010

Я пытаюсь найти определение и объявление функции nanf () - return 'Not Number, которая связана с функциональностью с плавающей запятой в среде компилятора Linux gcc - (glibc).

Мне нужно использовать аналогичное / то же самое определение для nanf () в Windows, чтобы построить мой код с помощью Visual Studio.

Я проверил следующие заголовочные файлы в папках Linux src / include, но не увидел ничего, связанного с объявлением nanf.

/ usr / include / math.h /usr/include/bits/nan.h

Любые указатели будут полезны.

спасибо,

-AD

1 Ответ

0 голосов
/ 20 декабря 2010

Объявление просто (C99 §7.12.11.3):

float nanf(const char *tagp);

или макросы, которые расширяются до чего-то эквивалентного. Однако совместимая реализация сильно зависит от платформы, потому что стандарт не определяет, как интерпретировать tagp, за исключением того, что поведение эквивалентно определенному вызову strtof и «функции nan возвращают тихий NaN , если доступно, с содержанием, указанным через tagp. "

Вместо того, чтобы пытаться втиснуть C99 особенности в один компилятор и библиотеки, которая упорно отказывается даже попробовать для их реализации, то почему бы не просто использовать реальный C компилятор? Там много всего.

...