2009-02-06 3 views
7

통합 vs 디버거가 왜 그렇게 기능적입니까? 나는 기억 속에있는 물건의 내용을 볼 수 없다. 예를 들어, 비트 맵으로 작업 중이므로이를 메모리에서보고 싶습니다. 더 나은 디버거가 필요합니까? 그렇다면 권장 사항에 관심이 있습니다. 디스어셈블러처럼 강력한 것은 없으며 디버거 일뿐입니다.Visual Studio C++ 디버거 : 16 진수 덤프가 없습니까?

+0

windbg 및 visual studio에서 로컬 변수를 읽는 방법에 대한 기본 정보를 찾는 데 3 시간을 보냈습니다. 나는 아무 것도 찾을 수 없다. 신뢰할 수있는 정보 출처를 찾을 수 없습니다. 모든 것을 볼 수있는 GDB만큼이나 좋은 것은 아니며 문서화가 정말 쉽고 간단합니다. – Owl

답변

27

나는 거의 기능을 수행하지 못했습니다. VS는 소스를 찾을 수 없을 때 기본적으로 디스 어셈블리를 제공하며, 메모리 뷰로 쉽게 접근 할 수 있습니다. 디버그 -> Windows -> 메모리. 주소 : 상자에 "this"를 입력하여 현재 개체의 메모리를 가져옵니다. 특정 회원 유형 '& this-> member_name'을 봅니다. 바로 첫 번째 바이트로 이동합니다.

+0

그리고 메모리가 그 메뉴에 나타나지 않을 때가 얼마나 좋은지, 정말로 필요할 때만 그렇습니다. 주소 레벨 디버깅 사용 설정 on ... – nus

+0

디버거에서 프로젝트의 C++ 프로그램을 실행하는 중입니까? 그것은 의미가없는 상황에서는 나타나지 않을 것입니다. –

1

VS2005에는 메모리 바이트를 제공하는 "메모리"탭이 있습니다. 나는 당신이 어떻게 어떤 변수가 있는지 알려주는 16 진수 블록을 강조 표시하는 방법을 정확히 알지 못합니다.

1

디버그 | Windows | 메모리를 사용하면 원하는 메모리 영역을 볼 수 있습니다 (프로세스/액세스 제한이 있음). 이것은 VS2005에 있습니다. 다른 버전의 메뉴 구조가 약간 다를 수 있습니다.

+0

vs 2008을 사용하면 여기에 있습니다. 그래도 고마워. – Zombies

+0

그것은 2013 년과 동일하므로 2008 년 동일하다고 확신합니다 – TankorSmash

2

디버그 | Windows | 메모리 | 메모리 1-4. 보려는 메모리 블록의 주소를 주소에 넣으십시오. 아마도 마우스로 실행하려고 시도하는 가장 어려운 메뉴 옵션 일 것입니다 (당신은 ... 볼 것입니다).

이전 버전의 VS에서는 변수의 내용을보고 싶었지만 변수의 주소를 결정해야했습니다. 일반적으로 조사 식 창을 사용했습니다.

그러나 최신 버전에서는보기 윈도우와 마찬가지로 변수 이름을 주소로 입력 할 수 있습니다.

0

좋을지 모르겠지만 Visual Studio 또는 WinDbg와 같은 다른 디버거와 함께 사용하도록 설계된 Bitmap Memory Debugger은 "디버거 표시 메모리를 비트 맵으로 사용"에 대한 빠른 Google 검색으로 나타났습니다.