008
13.04.2010, 20:07 Uhr
0xdeadbeef
Gott (Operator)
|
Naja, ich schätze, man könnte das etwa so machen:
C++: |
#include <algorithm> #include <cstddef> #include <iostream> #include <iterator> #include <string>
union Wandel { float f; char c[sizeof(float)]; } wd;
std::string stringify(float x) { Wandel w;
w.f = x; return std::string(w.c, w.c + sizeof(float)); }
template<typename T, std::size_t N> std::size_t array_size(T (&)[N]) { return N; }
int main(void) { float numbers[] = { 3.1464751689077453e+35, 4.2956875278372203e+24, 1.1289690715099218e+27, 4.6310489015987742e+27, 2.0192943120597566e-19, 6.5712656250000000e+05, 4.4381484949148942e+27, 1.0574474443064061e+21, 1.4774899768617578e-19, 1.9431903352836395e-19, 6.6815728330841849e+22, 2.6301215337890185e+20, 3.9441117217805355e+30, 7.1854026831171162e+22, 1.8959090387281827e+31, 2.9778190102371303e+35, 1.7749277697796982e+28, 1.3563157719409819e-19 };
std::transform(numbers, numbers + array_size(numbers), std::ostream_iterator<std::string>(std::cout, ""), stringify); std::cout << std::endl; }
|
-- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra |