Maison > développement back-end > C++ > Comment imprimer des éléments d'un vecteur C dans GDB ?

Comment imprimer des éléments d'un vecteur C dans GDB ?

DDD
Libérer: 2024-10-27 19:53:30
original
585 Les gens l'ont consulté

How to Print Elements of a C   Vector in GDB?

Impression des éléments d'un vecteur C dans GDB

Lors du débogage du code C dans GDB, vous devrez peut-être examiner le contenu d'un vecteur. Pour ce faire avec un vecteur d'entiers (std::vector), suivez ces étapes :

Impression du vecteur entier :

print *(myVector._M_impl._M_start)@myVector.size()
Copier après la connexion

Cette expression accède au pointeur vers le tableau interne du vecteur (_M_impl._M_start) et imprime le nombre d'éléments spécifié (myVector.size()).

Impression uniquement des N premiers éléments :

print *(myVector._M_impl._M_start)@N
Copier après la connexion

Remplacez N par le nombre d'éléments que vous souhaitez imprimer.

Explication :

  • Le pointeur vers le tableau interne est stocké dans _M_impl._M_start.
  • La commande GDB pour imprimer N éléments d'un tableau commençant au pointeur P est : print P@N.
  • La taille totale du vecteur peut être obtenue en utilisant myVector .size().

Remarque : Cette approche peut varier en fonction de la version de votre compilateur. Pour GCC 4.1.2, cette méthode a été testée pour fonctionner efficacement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal