2주차 [배열과 동적할당]
·
📚알고리즘/C 언어
배열도 포인터다! C언어에서는 배열도 포인터이다. 포인터 연산자를 통해서 배열에 접근할 수 있으며 초기값은 배열의 첫번째 원소다. 예시를 통해 한번 보자. 위의 이미지를 보면 함수의 파라미터로 배열을 넣어주었다. 위의 배열은 int 배열 이므로 인트 포인터타입으로 배열을 받아온것을 볼 수 있다. 저렇게 배열을 받아오면 arr에는 배열의 첫번째 원소의 주소가 담겨져 있다. 배열의 값을 사용하려면 지난번에 했던 것처럼 역참조를 통해서 *arr이라고 쓰면 배열의 첫번째 원소의 값을 나타낸다. (배열의 두번째, 세번째 값을 받아오고 싶으면 *(arr+i)와 같이 i에 적당한 숫자를 대입하므로써 배열의 값에 접근할 수 있다.) 동적할당 C를 공부하는 내내 이것만 기다렸다. 프로그램 실행 중에 유동적으로 메모리 공..
1주차 [포인터]
·
📚알고리즘/C 언어
컴퓨터가 정보를 저장하는 방식 컴퓨터는 기본적으로 bit단위로 정보를 저장한다. (8bit = 1byte) int a = 1024를 컴퓨터가 저장한다고 가정하자. 1024는 2의 10제곱이므로 1바이트(8비트 = 256)의 크기를 넘어간다. 따라서 옆의 메모리까지 연속하여 사용하게 된다. 그림을 보면서 이해해보자. 컴퓨터에는 메모리가 있고, 메모리마다 주소값이 있다. 만약 a를 저장한다면, 메모리공간이 총 4칸이 필요하게 된다. 주소값은 컴퓨터의 메모리 안에서의 실제 위치를 가르킨다. 우리는 포인터를 이용해 직접 그 데이터에 접근할 수 가 있다. 1024처럼 여러 공간을 차지한다면, 여러 메모리공간의 주소값의 가장 첫번째 부분을 가르킨다. 예시에서의 주소값은 100이 된다. 포인터 변수 포인터 변수를 선..
요플레에
'📚알고리즘/C 언어' 카테고리의 글 목록