GDB(GCC 4.1.2)에서? " />
GDB에서 std::벡터의 요소 인쇄
gdb는 C 프로그램 디버깅을 위한 강력한 도구로, 개발자가 C 프로그램의 내부 상태를 검사할 수 있도록 해줍니다. 여기에는 std::Vectors와 같은 데이터 구조의 내용을 검사하는 기능이 포함됩니다.
문제: GDB에서 std::Vector
해결책:
GCC 4.1.2 및 유사한 버전의 경우 다음 단계를 사용할 수 있습니다.
요소를 인쇄합니다. : 원하는 수의 요소를 인쇄하려면 인쇄 명령을 사용하세요. 예:
a. 전체 벡터를 인쇄합니다. print *(myVector._M_impl._M_start)@myVector. size()
b. 처음 N개 요소만 인쇄: print *(myVector._M_impl._M_start)@N
설명:
std::Vector의 내부 표현에는 내부 배열에 대한 포인터(_M_impl._M_start)와 벡터의 크기(size())가 포함됩니다. 이러한 값을 결합하면 원하는 요소에 액세스하고 인쇄할 수 있습니다.
참고: 단계는 컴파일러 버전에 따라 다를 수 있습니다. 가장 정확한 지침을 얻으려면 항상 사용되는 특정 컴파일러에 대한 설명서를 참조하세요.
위 내용은 GDB(GCC 4.1.2)에서 std::Vector