기초
int arr[2][3]의 대해서
알쿠미
2015. 12. 20. 19:09
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | printf("%x %d\n", narr, sizeof(narr)); // 배열명으로 가장 첫번째가 저장된 곳 배열의 전체를 가리키고 있는값 // 출력 값 : 주소값 24(3*2*4) printf("%x %d\n", &narr, sizeof(&narr)); //narr 이 가리키고 있는 주소값이고 위에 값이랑 같다. 그리고 가리키고있는 값이 주소값 따라서 // 출력 값 : 주소값 4(가리키는 값이 아니라 그냥 주소값(포인터 크기) printf("%x %d\n", narr[0], sizeof(narr[0])); //narr[0]은 행을 대표하는 주소 값은 narr과 같다. // 출력 값 : 주소값(narr과 같다) 12(행을 대표하기 때문에(3*4)) printf("%x %d\n", &narr[0], sizeof(&narr[0])); //2번의 결과와 같다. printf("%x %d\n", narr[1], sizeof(narr[1])); printf("%x %d\n", narr[2], sizeof(narr[2])); // 결과 값 : 주소값 12(행을 대표하기때문에) printf("%x %d\n", &narr[1], sizeof(&narr[1])); printf("%x %d\n", &narr[2], sizeof(&narr[2])); // 결과 값 : 주소값 4(주소크기) printf("%x %d\n", narr[0][0], sizeof(narr[0][0])); printf("%x %d\n", narr[0][1], sizeof(narr[0][1])); //쓰레기값 4(가리키는 변수크기) printf("%x %d\n", &narr[0][0], sizeof(&narr[0][0])); printf("%x %d\n", &narr[0][1], sizeof(&narr[0][1])); //주소값 4(주소크기) | cs |