Я пытаюсь получить число double из введенной пользователем (или считанной из файла) строки при помощи strtod(str, &ptr), где str - указатель на строку с числом, ptr - указатель на неиспользуемый остаток строки.
Все время точность полученного числа не превышает шести символов! Даже если введено число с 10-ю символами после запятой. При этом ptr указывает на конец строки, т.е. все число из str было «конвертировано».
atof является синонимом strtod(str, NULL), т.е. ведет себя абсолютно так же криво.
Какую функцию можно использовать, чтобы преобразовать строку в double?