Функция sscanf не распознает шестнадцатеричное число, INF и NAN

Имеется следующий код:

char string[] = "0xa.1fp10";    
double num;    
sscanf(string, "%lf", &num);    
printf("%lf\n", num);

По идее ответ должен быть 10364.0, но программа выдает 0.0. Также sscanf не распознает INF и NAN:

sscanf("inf", "%lf", &num);

sscanf("nan", "%lf", &num);

В чем причина?


Ответы (0 шт):