본문 바로가기
728x90

포인터와 배열3

포인터와 배열(Pointer & Array) -(2/2) □ 2차원 배열 ○ 2차원 배열은 1차원 배열처럼 배열명과 첨자를 사용하여 선언한다. - 각 배열요소의 형태는 int형 변수 4개짜리 1차원 배열이다. - 전체 배열은 12개의 int형 기억공간이 1차원 배열의 형태로 할당된다. ○ 2차원 배열에서의 1차원배열은 2차원배열의 일부. □ 2차원 배열의 초기화 ○ 1차원 배열처럼 초기화하며 초기화 값은 행 단위로 차례로 저장됨. ex) int array[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; 로 선언과 함께 초기화 된다면 int array[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; ○ 만약 해당 배열 요소를 초기화하지 않으면 0으로 채워진다; ex) int array[3][4]={{1},{5,6},{9.. 2016. 9. 24.
포인터와 배열(Pointer & Array) -(1/2) □ 배열의 이름은 배열의 시작 주소이다. - 배열의 주소접근 예제) 위 그림에서 int형 변수 3개인 배열을 생성하였다. 첫번째 결과값의 배열의 첫번째 인덱스 array[0]의 주소(&)와 같은 주소를 갖는것을 확인 할 수 있다. sizeof 함수를 사용하여 바이트 크기를 측정하면, 64bit인 경우 주소의 크기는 8바이트를 갖는것을 볼 수 있으나 (32bit인 경우 4바이트) sizeof(array) 2016. 9. 9.
포인터(Pointer) □ 포인터는 변수의 메모리 주소를 저장하는 변수다 변수는 메모리 상의 저장 공간이므로 그 위치(주소)를 알면 사용할 수 있다. □ 주소 연산자(&)프로그램이 사용하는 메모리에는 바이트별로 주소값이 있다. 이 값은 0부터 시작하고 바이트 단위로 1씩 증가하므로 2바이트 이상의 크기를 갖는 변수는 여러 개의 주소값에 걸쳐 할당된다. 예를 들어 변수 a가 메모리 100번지부터 할당되었다면 100번지부터 103번지까지 4바이트에 걸쳐 할당된다. 주소는 변수가 할돵된 메모리 공간의 시작 주소를 사용 주소 연산자(&)의 사용법 예제 포인터는 주소를 저장하는 변수로 일반 변수와 마찬가지로 선언한 후에 사용한다. 선언하는 방법은 변수 앞에 *만 붙여주면 된다. 간접참조 연산자(*) 예제) *pa == num ① num.. 2016. 9. 8.
728x90