Pourquoi gdb casting n'est pas de travail?
- Je utiliser print (CEthPacket*) 0xeb609a0
pour examiner un objet à l'adresse donnée, et obtenir A syntax error in expression, near ') 0xeb609a0'.
Ce que je fais mal?
EDIT:
CEthPacket est une classe C++ et je suis sur gdb Fedora (6.8-37.el5).
Vous devez vous connecter pour publier un commentaire.
J'ai juste couru à problème similaire, et, à partir d'un de mes collègues, j'ai appris que vous avez besoin de fournir de l'espace de noms de la classe appartient à l'intérieur d'une seule des citations comme suit:
std::vector<int>*
, par exemple?'
est nécessaire. thx.Vous n'avez pas dit sur quelle plate-forme, la version de GDB, ou ce que
CEthPacket
est.Ma première supposition est que vous devriez essayer
print (struct CEthPacket *) 0xeb609a0
à la place.Également votre départ de l'espace de noms est celui de la pile actuelle. Si vous voulez commencer à partir de la racine, vous devez utiliser ::NS1::NS2::Obj.
Je viens de tomber sur un très semblable erreur. Il a été causé parce que j'essayais de faire référence à un objet qui n'est pas défini dans le cadre de l'actuel cadre de pile. Essayez de changer pour un cadre de pile où la CEthrPacket objet est défini.