큰지도를 사용하는 알고리즘을 만들고 있습니다. 나는 GDB와 함께 알고리즘을 따르려고 노력하고 있는데, 종이에서 잘못되어가는 부분을 보려고하고있다. 그러나지도가 큰수록, GDB는 그것을 abbreviates 내가 다음에 필요할 값 표시를 중지 :디버깅하는 동안 GDB가 큰 std :: map을 출력하게합니다.
(gdb) p R
$1 = std::map with 140 elements = {[0] = "", [1] = "e", [2] = "", [3] = "", [4] = "", [5] = "", [6] = "", [7] = "", [8] = "a", [9] = "a", [10] = "", [11] = "", [12] = "", [13] = "", [14] = "",
[15] = "", [16] = "a", [17] = "b", [18] = "", [19] = "", [20] = "", [21] = "", [22] = "b", [23] = "", [24] = "", [25] = "a", [26] = "", [27] = "", [28] = "", [29] = "", [30] = "", [31] = "b",
[32] = "", [33] = "a", [34] = "", [35] = "", [36] = "", [37] = "", [38] = "", [39] = "", [40] = "(b|a)", [41] = "e", [42] = "", [43] = "", [44] = "", [45] = "", [46] = "", [47] = "", [48] = "",
[49] = "", [50] = "", [51] = "a*.a", [52] = "", [53] = "", [54] = "", [55] = "", [56] = "", [57] = "", [58] = "", [59] = "", [60] = "", [61] = "", [62] = "", [63] = "", [64] = "", [65] = "a",
[66] = "b", [67] = "", [68] = "", [69] = "", [70] = "", [71] = "", [72] = "b.a*.a", [73] = "", [74] = "a", [75] = "", [76] = "", [77] = "", [78] = "", [79] = "", [80] = "b", [81] = "", [82] = "a",
[83] = "", [84] = "", [85] = "", [86] = "", [87] = "", [88] = "", [89] = "(b|a)", [90] = "e", [91] = "", [92] = "", [93] = "", [94] = "", [95] = "", [96] = "", [97] = "", [98] = "", [99] = ""...}
내가 P는 R [100] 그러나 GDB는이 구문을 이해하지 못하는와 액세스 요소를 해봤를 :
(gdb) p R[100]
Attempt to take address of value not located in memory.
나는 GDB 명령 인쇄 꽤 디스플레이를 만들기 위해 파이썬 스크립트입니다 꽤 - 프린터를 사용하는 들었지만, 난 안 내 표준 인쇄 정확히 어떤 꽤-프린터 확신 :: 지도를 수정하는 방법을 모르겠습니다. 또한 STL 컨테이너에서 메모리가 어떻게 처리되는지 (아직 할당 자와 물건을 연구하지 못했음) 모르므로 코드에 들어가기를 원하지는 않습니다.
모든 것을 간단하게 인쇄하는 방법을 알고 계십니까? 아니면 예쁜 프린터를 수정해야합니까? (그렇다면 수정해야 할 파일과 변경 사항을 등록 할 명령을 알려주십시오.).
오, 그 간단한 ... 나는 게시물에 그것을 봤지만 어떤 이유로 나는 그것이 배열, 문자열 등에서 일하고 있다고 생각했습니다. 많이 고마워요! – Harkan
@ 하칸. 답이 문제를 해결하면 받아 들여야합니다. 재 : 배열, 문자열, 등등 - 예쁜 프린터 수 있습니다 (그리고 보통 쓰여집니다) 또한 설정을 존중합니다. –