2차원 배열과 1차원배열의 포인터 연산..
인1형녀
2023.04.01
오류에 대하여 질문하신다면,어느 부분에서 어떤 내용의 오류가 나는지를 써주세요.
1차원은 int arr[i]로 선언을하고포인터도 int *pA와 같이 자료형을 같게 해주는걸로 알고 있습니다.뭐랄까. 예를들어 arr+1을 해주면 4바이트 증가.arr+2는 8바이트 증가 라고 알고있습니다.int 자료형이 4바이트를 나타내므로..근데2차원 배열에서는int arr[i][j] 라 선언을 하고arr+1을 해주면 8바이트가 늘어납니다.arr+2를 해주면 16바이트.두배가 늘어나네요.여기는 대충 이해가 갑니다.2차원 배열이므로 (i,j)가 각각 4바이트*2 이므로 8바이트 증가가 된다는것까지는 제 추측으로 이해했습니다.근데 문제는책에서는 1차원 배열과는 다르게 int arr[i]로 했으면 포인터도 int형으로 선언해야되는데.2차원은int arr[i][j]로 선언하면 바이트 증가량을 생각해서 다른 자료형을 사용한다고 나와있어요...뭔 소리인지 이해가 안가서 질문드려요.8바이트 증가를 한다면. double형으로 포인터 선언을 해야하나요?그리고 제 질문글에서 제가 잘못알고 있는것이 있으면 지적해주시길 바랍니다.
-
찬
ㄷㄷ 어떤책인가요.
저도 처음들어보는 기법...