C언어에서는 배열과 포인터가 굉장히 밀접한 관계가 있습니다.
일단 정리했던 PPT를 보여드리겠습니다.
제일 중요한 것은 주소! 인 것입니다.
포인터는 주소를 가리키는 것이고 배열의 변수명은 주소값을 나타냅니다.
배열과 포인터의 연관성 특징을 알아보겠습니다.
1. 메모리 주소와 인덱스: 배열의 각 요소는 메모리에 연속적으로 할당됩니다. 따라서 각 요소는 고유한 메모리 주소를 가집니다. 포인터는 변수의 메모리 주소를 저장하는데 사용되며, 배열의 이름은 해당 배열의 첫 번째 요소의 주소를 가리킵니다.
2. 포인터 연산: 포인터는 주소 연산에 사용됩니다. 포인터 산술을 사용하여 배열 요소에 접근할 수 있습니다. 예를 들어, 배열의 첫 번째 요소를 가리키는 포인터에 정수 값을 더하면 다음 배열 요소의 주소를 얻을 수 있습니다. (예시참조!)
3. 함수 매개변수: 배열은 함수에 전달될 때 포인터로 전달됩니다. 배열을 함수에 전달할 때는 배열의 이름이 포인터로 암묵적으로 변환되어 전달됩니다. 배열의 크기를 함수에 전달할 필요가 없습니다. 함수 내에서 배열의 요소에 접근할 때는 포인터 연산을 사용합니다.
4. 메모리 관리: 동적 메모리 할당을 사용하여 배열을 생성할 수도 있습니다. 이 경우, 할당된 메모리의 시작 주소가 포인터로 반환되고, 이를 사용하여 배열에 접근합니다.
간단히 말해, 배열과 포인터는 C 언어에서 데이터를 저장하고 관리하는 데 사용되며, 배열은 포인터와 밀접한 관련이 있습니다. 배열은 포인터로 취급될 수 있으며 포인터 연산을 통해 배열에 접근할 수 있습니다.
'전공공부 > C, C++' 카테고리의 다른 글
[C] 10. C언어 구조체 (32) | 2024.02.25 |
---|---|
[C] 9. C언어 다차원 배열 및 다중 포인터 (32) | 2024.02.24 |
[C] 7. C언어 배열 및 포인터 (29) | 2024.02.20 |
[C] 7. C언어 사용자 정의 함수, 변수의 특성(지역, 전역, static) (14) | 2024.01.10 |
[C] 6. C언어 반복문 및 분기(for, while, break, continue) (37) | 2024.01.05 |