I am a fresh new user ( I need to extend some EIGEN library feature by using your float128 )
How to assign a "float128" variable with a regular "double" variable ? With my source code in attachement double double_pi = 3.141592653589793 ; float128 float128_pi = 3.141592653589793Q ; produces the output that looks fine to me double_pi = 3.141592653589793e+00 float128_pi = 3.141592653589793000000000000000000e+00 but thestatement float128_pi = double_pi ; produces float128_pi = 3.141592653589793115997963468544185e+00 How to get 3.141592653589793000000000000000000e+00 also from an assigment ??? What am I doing wrong ? Thanks for any help Regards, Jacques
// // g++ -o jm.cpp -I/JM/SOFT/boost_1_77_0 jm.cpp -lquadmath // #include <boost/multiprecision/float128.hpp> #include <iostream> using boost::multiprecision::float128 ; int main( ) { std::cout.setf( std::ios_base::scientific ) ; std::cout.setf( std::ios_base::showpoint ) ; // include any trailing zeros double double_pi = 3.141592653589793 ; float128 float128_pi = 3.141592653589793Q ; std::cout << " double_pi = " << std::endl << std::setprecision( std::numeric_limits<double>::digits10 ) << double_pi << std::endl << std::endl ; std::cout << "float128_pi = " << std::endl << std::setprecision( std::numeric_limits<float128>::digits10 ) << float128_pi << std::endl << std::endl ; float128_pi = double_pi ; std::cout << "float128_pi = " << std::endl << std::setprecision( std::numeric_limits<float128>::digits10 ) << float128_pi << std::endl << std::endl ; std::cout << "sizeof double_pi = " << sizeof( double_pi ) << std::endl ; std::cout << "sizeof float128_pi = " << sizeof( float128_pi ) << std::endl << std::endl ; }
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org https://lists.boost.org/mailman/listinfo.cgi/boost-users