wydaje mi się że standardowo dla dużych doubli używana jest notacja wykładnicza, i w tym przypadku liczba 10000001, przedstawiana w notacji wykładniczej wyglądałaby tak 1.0000001e+007 co oczywiście jest głupotą dlatego przedstawiana jest jako 1e+007 co ogólnie jest ładniejsze w prezencji i ogólnie to jest błąd poniżej 1% więc jest on zazwyczaj dopuszczalny. Ale żeby wymusić w naszym programie wyświetlanie tej liczby bez notacji wykładniczej (sama kropka) musimy napisać (używamy klasy fixed):
cout << "wartość = " << fixed << *pd << ": położenie = " << pd << endl;
a jeśli chcemy używać notacji wykładniczej(lub notacji z kropką) ale z większą precyzją to musimy dodać nagłówek:
#include <iomanip>
i napisać:
cout << "wartość = " << setprecision(10)<< *pd << ": położenie = " << pd << endl;
oczywiście wartość podana w setprecision to liczba miejsc po przecinku albo ogólnie liczba znaczących liczb dla notacji wykładniczej.
Ogólnie o wszystkich flagach można przeczytać tutaj: http://en.cppreference.com/w/cpp/io/manip