max. ziffernanzahl einer zahl bestimmen
-
hola leute
gibt es einen mechanismus mit dem man die max. anzahl von zahl eines datentypes rausfinden kann ? im dezimalsystem
also z.b. der maximalwert eines unsigned ints hat 10 ziffern (4294967295).
oder muss ich das selber programmieren ?Meep Meep
-
Hi,
macht nicht std::numeric_limits<T>::digits10 sowas ?
-
jo das waere scheinbar das was ich brauche.
welche header muss ich dafuer einbinden ?hab es mit climits.h limits.h limits probiert.
dann hab ich folgenden code probiert:
Memo1->Lines->Add(numeric_limits<unsigned int>::digits10);bekomme dann als fehler '[C++ Fehler] main.cpp(19): E2451 Undefiniertes Symbol 'numeric_limits''
mit 'std::' hat er es auch nicht genommen. hab da wahrscheinlich die falsche header eingebunden.
mit welcher header funktioniert es ?
Meep Meep
-
hi,
#include <limits>Sollte es tun.
-
re
habs jetz hinbekommen. <limits> und std:: . die kombination hab ich scheinbar nicht ausprobiert.
er gibt mir jedoch bei std::numeric_limits<unsigned int>::digits10 und bei
std::numeric_limits<int>::digits10 jeweils 9 aus. was ja nicht so recht stimmt.
warum dieses ?
muesst er fuer unsigned int nicht 9 und fuer int 10 ausgeben ?Meep Meep
-
Hi,
kann ich dir im moment nicht beantworten. Aber schau mal hier
http://www.roguewave.com/support/docs/sourcepro/stdlibref/numeric-limits.html#idx1014
Vielleicht findest du da eine antwort.