Hallo, ich probiere grade einen String in eine 64Bit Value zu Konvertieren, soweit klappt das auch aber er verschluckt entweder die erste Zahl oder die Letzte je nach dem wie ich die größe halt änder
Ausgabe:
0x142AF11C8
42AF11C8
auch wenn ich es ohne 0x aus der Datei lese ändert es leider nix.
Habe ich vielleicht etwas übersehen ? Danke :)
Lösung:
oh man - man sollte ggf auch %I64x verwenden bei printf ..
Code:
std::fstream File;
File.open("./ESP.ini");
std::string szLine;
std::size_t position = 0;
std::string szCGame;
while (std::getline(File, szLine))
{
position = szLine.find("CGame=");
if (position != std::string::npos)
{
szCGame = szLine.substr(position + 6, position + 11);
}
}
File.close();
printf("%s\n", szCGame.c_str());
//DWORD64 pCGame = std::strtoll(szCGame.c_str(), 0, 16);
DWORD64 pCGame = _strtoui64(szCGame.c_str(), 0, 16);
printf("%p\n", pCGame);
0x142AF11C8
42AF11C8
auch wenn ich es ohne 0x aus der Datei lese ändert es leider nix.
Habe ich vielleicht etwas übersehen ? Danke :)
Lösung:
oh man - man sollte ggf auch %I64x verwenden bei printf ..