C
[C] 포인터와 배열과의 관계, 그리고 포인터 연산
앞서 포인터에 대한 기초 개념을 간단하게 살펴보았다. 포인터가 어렵다고 많이 얘기하지만, 사실 그 악명에 비해 포인터의 개념자체는 크게 어렵지 않다. 포인터와 배열의 관계를 살펴보기에 앞서 다음 내용을 읽어보고 가도록하자. 배열의 또 다른 이름은 포인터이다. 정확하게는 그 값을 바꿀 수 없는 상수형 포인터이다. #포인터와 배열의 관계 다음 코드를 먼저 살펴보자. #include int main() { int arr[3] = { 1, 2, 3 }; printf("배열의 이름 : %p \n", arr); // 0000001DD735F838 printf("배열의 첫번쨰 원소 : %p \n", &arr[0]); // 0000001DD735F838 printf("배열의 두번쨰 원소 : %p \n", &arr[1]..
[C] 포인터의 기초 개념
#포인터의 선언과 초기화 포인터(pointer)는 프로그래밍 언어에서 다른 변수, 혹은 그 변수의 메모리 공간 주소를 가리키는 변수를 말한다. 어렵게 생각할 필요없이, 포인터 또한 우리가 지금까지 써왔던 int, double과 같이 하나의 변수이다. int형은 정수를 저장하고, double형이 실수를 저장하듯이 포인터 변수는 메모리의 "주소"를 저장한다.(포인터 변수를 줄여서 포인터라고 한다) 다음 코드를 보면 포인터의 개념이 잡힐 것이다. #include int main() { int num1 = 10; int* p; // 포인터 변수 p의 선언 p = &num1; // 포인터 변수 p의 초기화 // int* p = &num1; 와 같이 선언과 동시에 초기화 할 수 있다. printf("num1의 주소..