Convertir de std::string en DWORD


J'ai un problème simple avec une conversion:

std::string str = "0xC0A80A02"

et j'ai besoin de le convertir en valeur DWORD.

J'ai cherché sur le web et trouvé une solution mais aucune ne semble fonctionner.

try1:

DWORD m_dwIP = atol(str.c_str());

try2:

std::istringstream ss(str.c_str());
ss >> m_dwIP;

try3:

sscanf (str.c_str(),"%u",str,&m_dwIP);

Note de la chaîne de magasins de la valeur en hexa .

Merci,

Gabriel

  • J'ai marqué ce que windows api car il est spécifique de windows (DWORD n'est pas standard C++)
  • merci je suis un débutant en c++ et je reçois les types de tous mélangés
  • La question du titre me semble le même que le "Convertir banane dans un pistolet"... 🙂
  • Ouais, ce à quoi êtes-vous le passage de cette valeur que prend type DWORD? Les Chances sont que la bibliothèque a une sorte de hex converter fonction disponible, ainsi. Dans des circonstances normales, il est absurde de convertir une chaîne en un DWORD.
  • La bibliothèque que j'utilise est externe et je n'ai pas accès à elle. Ce que je suis en train de réaliser est d'ajouter un fichier de configuration d'une valeur, puis obtenir cette valeur au démarrage
InformationsquelleAutor Gabriel | 2011-04-26