C ++ 11 hat einige neue Funktionen zur Konvertierung von Zeichenfolgen hinzugefügt:
http://en.cppreference.com/w/cpp/string/basic_string/stoul
Es umfasst stoi (string to int), stol (string to long), stoll (string to long long), stoul (string to unsigned long), stoull (string to unsigned long long). Bemerkenswert in seiner Abwesenheit ist eine stou-Funktion (Zeichenfolge zu vorzeichenlos). Gibt es einen Grund, warum es nicht benötigt wird, aber alle anderen?
Verwandte: Keine "sto {short, unsigned short}" -Funktionen in C ++ 11?
unsigned long
gerechtes Nein ist unsigned int
.
unsigned long
es 64 Bit und unsigned int
32. Es handelt sich um verschiedene Typen, von denen nicht angenommen werden kann, dass sie identisch sind.
stou
" Frage, sondern eine Frage, die nach einem möglicherweise eindeutigen Grund für diese offensichtliche Inkonsistenz fragt. Wenn Sie wissen, dass es keinen solchen Grund gibt, posten Sie ihn als Antwort.