임의의 값을 생성하는 배열을 생성하려고 시도하고 다른 배열에서 포인터를 할당하여 다른 함수에서 사용하려고합니다.배열에 포인터 지정
질문 1 : 올바른 방법입니까?
질문 2 : 아래 코드를 실행하면 포인터 함수가 실제 배열의 값과 일치하지 않는 값을 생성합니다. 내가 도대체 뭘 잘못하고있는 겁니까?
int size = 100;
int theray[size];
for(int i=0; i<size; i++)
{
theray[i] = (rand()%100);
}
//Output array
cout<<"The array: ";
for(int j=0; j<size; j++)
{
cout<<theray[j]<<" ";
}
cout<<endl;
int (*parray)[100] = &theray;
cout<<"The array pointer: ";
for(int k=0; k<size; k++)
{
cout<<*parray[k]<<" ";
}
: 여기 (C++ 11)이 프로그램을 작성하기 위해 C++ 표준 라이브러리에서 클래스를 사용하는 것이 방법입니다 기능 "? 이 냄새가 나쁜 –
포인터는 [** EVIL **] (http://www.parashift.com/c++-faq/defn-evil.html)입니다! –
'int theray [size];'이것은 유효하지 않습니다 C++; 'size'는 이것이 작동하기 위해서'const'라고 선언 될 필요가 있습니다. –