Frage zu 0x0000000100000000LLu
-
Was bedeutet
unsigned long long int basis = 0x0000000100000000LLu;
Das LLu steht bestimmt für long long unsigned?
Das 0x steht bestimmt für hexadezimal?
Wenn es hexadezimal wäre, wäre das dezimal = 1*16^8Oder ist es binär, also 1*2^8=256?
Wenn es binär ist, was bedeutet dann 0x?
-
Ja, 0x steht für Daten in Hexadezimal-Format, danaben gibt es noch 0 für Oktalzahlen (Basis 8). Für Binärzahlen gibt es kein eigenes Suffix, bestenfalls Konstruktionen wie BOOST_BINARY.
-
CStoll schrieb:
Ja, 0x steht für Daten in Hexadezimal-Format, danaben gibt es noch 0 für Oktalzahlen (Basis 8). Für Binärzahlen gibt es kein eigenes Suffix, bestenfalls Konstruktionen wie BOOST_BINARY.
Danke
-
CStoll schrieb:
Für Binärzahlen gibt es kein eigenes Suffix
Bei Code::Blocks funktioniert 0b.
-
FreakY<3Cpp schrieb:
CStoll schrieb:
Für Binärzahlen gibt es kein eigenes Suffix
Bei Code::Blocks funktioniert 0b.
Bei GCC.
-
FreakY<3Cpp schrieb:
CStoll schrieb:
Für Binärzahlen gibt es kein eigenes Suffix
Bei Code::Blocks funktioniert 0b.
Wir reden hier nicht von den Eigenheiten einzelner Compiler (dafür gibt es ein eigenes Board), sondern von Standard-C++
-
gfds schrieb:
FreakY<3Cpp schrieb:
CStoll schrieb:
Für Binärzahlen gibt es kein eigenes Suffix
Bei Code::Blocks funktioniert 0b.
Bei GCC.
Cool!
Dann schreibe ich ab jetzt 0b. Kann sich ja nur um Jahre handeln, bis MS nachzieht.
-
unsigned long long int basis = 0x0000000100000000LLu;
Also bei mir ergibt das einen Übersetzungsfehler. (Suffix 'u' unbekannt.)
-
volkard schrieb:
Dann schreibe ich ab jetzt 0b. Kann sich ja nur um Jahre handeln, bis MS nachzieht.
Spätestens mit C++0x kannst du dir doch deine eigenen Literale bauen, z.B. mit b-Suffix