возвращаемое значение strtod (), если строка равна нулю

Согласно MSDN:

strtod возвращает 0, если преобразование не может быть выполнено или происходит недостаточное заполнение.

Что если моя строка равна нулю (т. Е. 0,0000)? Как я могу узнать, нет ли ошибки при конвертации?

ОК, я использую следующий код для проверки идеи:

char    *Y = "XYZ";
double  MyNum;
char    *MyEndPtr;
int     Err_Conversion = 0;

errno = 0;  //reset
MyNum = strtod (Y, &MyEndPtr);

if ( (MyNum == 0) && (errno != 0) && (strcmp(Y, MyEndPtr) == 0) )
        { Err_Conversion = 1;   }

Я вижу, что MyNum = 0, но никогда не вижу содержимое Y, скопированное в MyEnPtr, или errno = 0 в этой принудительной ошибке. Любая идея?

Ответы на вопрос(2)

Ваш ответ на вопрос