2016-11-21 8 views
3

gdb 디버거로 C++ 언어로 프로그램을 디버깅하려고합니다.어떻게 2 차원 배열을 gdb에 표시 할 수 있습니까?

필자는 배열 [100] [100]을 가지고 있으며 행과 열의 5 가지 요소만을보고 싶습니다.

나는 다음과 같은 명령을 사용하여 1 차원 배열을 처리 할 수 ​​

display *[email protected] 

을하지만 어떻게 2 차원 배열을 표시 할 수 있습니까?

나는 이러한 시도했지만 실패

display *[email protected]*5 
display *[email protected] 5 
+2

가'표시를하십시오 ** arr @ 5 @ 5' –

+0

네, 덕분에 사이먼 크레이머 –

답변

1

"더블"사용하는 기능은 다음 완료됩니다 거의 GDB에 호출 인쇄 할 수. 여기에 같은 종류의 질문에 대한 링크를 추가합니다. 행운을 빕니다!

Here an example

당신은 정보를 당신이 원하는 방식으로 인쇄하는 함수를 만들 수
2

말 : 다음

void print_matrix(int matrix[100][100], int number) 
{ 
    int i, j; 
    for (i = 0; i < number; ++i) 
    { 
     for (j = 0; j < number; ++j) 
      std::cout << matrix[i][j] << " "; 
     std::cout << "\n"; 
    } 
} 

와 GDB에 전화 :

call print_matrix(arr, 5)