여기 및 다른 장소에서 여러 가지 질문을 검토했지만 액세스 위반 오류에 대해 설명 할 수 없습니다. "액세스 위반 작성 위치 0x00000000"은 NULL 포인터에 해당합니다. 나는 int 포인터를 선언했으며 나중에 그 위치에 값을 설정하려고합니다. 포인터를 선언 할 때 메모리 공간을 할당하면 안됩니까? 이것이 noobish라면 나에게 용서해라. 그러나 나는 Java/AS3 사람의 안에서 매우 많다. 여기 C++ 액세스 위반 작성 위치 0x0 ... 설정 int *
는int* input;
char* userInput[1];
int* output;
int _tmain(int argc, _TCHAR* argv[])
{
while(1)
{
srand(time(0));
*input = (int)(rand() % 10);
그것은 마지막 줄에 중단 ... 내 코드의 일부입니다.
널 포인터를 역 참조하는 것은 야생 포인터보다 감지하기 쉽지만 * 정의되지 않은 동작입니다. . –
@Billy : 정적 수명이있는 변수는 실행이 시작되기 전에 먼저 0으로 초기화됩니다. 그 후 생성자가 실행됩니다. –