visual studio 2010 디버깅 관련 질문 있습니다.
글쓴이: soratz / 작성시간: 일, 2011/05/01 - 3:38오후
안녕하세요.
visual studio 2010으로 코딩을 하다가
디버깅을 하는데 이상한 부분이 생겨서 질문 드려요
문제가 되는 함수 헤더부분은 (이 함수 뿐 아니라 다른곳에서도 이런 에러가 발생합니다)
void pre_order_interm_a(struct stack *s, struct treenode *node, char *interm_a)
이고
구조체의 선언은
struct stack{ char **val; int top, capacity; }; struct treenode{ char *value; struct treenode *left_child; struct treenode *right_child; };
이렇게 되있는데 함수 내부에 break point를 잡고
조사식에 node를 입력하면 원래 +표시가 옆에 나와서 구조체 내의 변수들의 값을 볼 수가 있어야 되는데
그냥 달랑 node가 나오고 확장이 안됩니다...
struct stack *s 의 경우
조사식에 s를 치면 왼쪽에 + 표시가 나오고
그걸 누르면 내부 변수들을 확인 가능한데
struct treenode *node는 어찌된게 구조체로 인식을 못하네요..
예를들어 node 안에 char *value라는 값이 있어서
조사식에 node->value를 입력하면
오류: 연산자에 클래스/구조체/공용 구조체가 필요합니다.
이런 오류가 값에 뜨는데, 분명 코드는 잘 돌아가고 node도 구조체형 포인터인데 어찌된 일인지 모르겠습니다.
visual studio를 다시 설치해도 오류가 똑같이 나네요
첨부파일에 조사식 부분을 첨부합니다.
혹시 이런 비슷한 상황을 겪으셨던 분이 계시거나, 해결책을 아시면 조언 부탁드립니다.
File attachments:
첨부 | 파일 크기 |
---|---|
![]() | 10.28 KB |
Forums:
혹시
자동, 지역 창에서도 node 가 그렇게 표현되나요?
node 랑 s 의 주소가 근처가 아닌걸 보니... s는 걍 지역변수 선언 후 함수에 넘긴거고, node 는 동적할당해서 넘긴듯 한데...
동적할당 잘못 하신거 아닌가 몰겠네요..
/* How to Love Others */
while(GetDepth(Love) < Enough) DoLove();
참 이상하네요 ㅠ
디버깅 할때마다 되다 안되다 하네요...
정말 잘 만든 프로그램도 이런 이상한 버그가 있네요
덕분에 고생좀 했습니다ㅠ
안녕하세요
저 혹시 어떻게 해결하셨는지 알 수 있을까요?
댓글 달기