1
#include<stdio.h>
int main() {
int *p=NULL;
if (p == NULL) {
printf("%x",*p);
}
return 0;
}
가능하면 어떻게합니까? 내가 할 수 없다면, 그 가치는 무엇입니까?NULL 포인터를 가리키는 값을 확인할 수 있습니까?
#include<stdio.h>
int main() {
int *p=NULL;
if (p == NULL) {
printf("%x",*p);
}
return 0;
}
가능하면 어떻게합니까? 내가 할 수 없다면, 그 가치는 무엇입니까?NULL 포인터를 가리키는 값을 확인할 수 있습니까?
아니요, 일반적으로 NULL
포인터를 참조 해제 할 수 없습니다.이 포인터는 정의되지 않은 동작을 제공합니다.
그런 점에서이 아이디어는 약간 이상합니다.
이것은 특정 플랫폼에서 코드가 실행되지 않거나 결과가 발생하지 않지만 언어 사양을 위반하는 것은 아니므로 특정 구현에서 실행 한 결과가 중요하지 않음을 유의하십시오.
주로 플랫폼에 따라 다릅니다. – LPs
null은 플랫폼에 따라 달라집니다. null는 "undefined"/ "unknown"으로 처리되어야하므로 사용자가하려는 것은 거의 의미가 없습니다. –
하나의 마이크로 컨트롤러 또는 다른 간단한 마이크로 프로세서에서 그 값을 읽을 수 있습니다. –