방금 C로 프로그래밍을 배우고 포인터와 배열에 대한 이해를 높이기 위해 포인터를 전혀 만들지 않고 배열의 요소를 참조하려고했습니다.
for(k1 = 0; k1 < ROW; k1++){
for(k2 = 0; k2 < COLUMN; k2++){
array[k1][k2] = k1*COLUMN + k2 + 1;
printf("[%d][%d] = %d\n", k1, k2, *(array[k1] + k2));
}
}
전체 코드는 완벽하게 컴파일되고 실행됩니다.
큰 소스 코드에서 모든 단일 배열에 대한 포인터를 작성하는 것이 매우 비효율적 인 것 같습니다.
따라서 포인터를 사용하여 배열의 주소를 저장하고 검색하는 대신 위에 표시된 것처럼 배열의 주소를 직접 사용하는 것은 좋지 않은 프로그래밍 방법입니까?
printf "[%d][%d] = %d\n", k1, k2, array[k1] [k2]));
하면 포인터 산술을 피할 수 있으며 이해하기 쉽습니다.