다음 프로그램에서 ptr
은 을 가리키며 초기화되지 않은 변수 x
을 가리킨다. ptr
을 인쇄하기 전에 10
을 ptr
으로 지정하여 인쇄하십시오.포인터가 초기화되지 않은 변수를 가리킨다
#include <stdio.h>
int main()
{
int *ptr;
int x;
ptr = &x;
*ptr = 10;
printf(" x = %d\n", x);
printf(" *ptr = %d\n", *ptr);
}
모두 ptr
및 x
인쇄 올바른 값. 하지만 의심 스럽습니다. 동작이 정의되어 있습니까?
그것에 대해 읽어 보시기 바랍니다 것을 의미한다. 왜 그것이 정의되거나 정의되지 않을 것이라고 생각합니까? 당신의 연구 노력은 어디에 있습니까? 네가 이해하지 못했던 것을 어떻게 찾았습니까? 그것들을 추가하는 것은 좋은 질문입니다. –
초기화되지 않은 변수의 _ 값에 액세스 할 때만 잘못 정의 된 동작을 호출 할 수 있습니다. – Lundin
"역 참조하기 전에"ptr로, 나는 ptr에'10'을 할당하고 역 참조 해제한다는 의미를 설명해 주시겠습니까? ? 'ptr'을'ptr'에 할당하지 마십시오'ptr'은 역 참조입니다. 역 참조하기 전에 역 참조 하시겠습니까? – Gerhardh