포인터

Study/C언어

처음하시는 분들을 위한 C언어 기초강의 시즌2 - 31 [다루지 않았던1(포인터를 이용한 함수 통신)]

제 31강) 포인터를 이용한 함수 통신 오늘은 "강의에서 다루지 않았던"의 첫번째 시간입니다. 포인터를 이용하여 함수간의 통신을 하는 법에 대해서 알아봅시다. 번지 연산자& 포인터를 이용하여 함수간 통신(Communication)을 하기 위해서는 "번지 연산자"를 사용합니다. 이 통신을 함으로써 다른 함수에서 값을 입력받아올 수 있고 이미 있는 변수의 값을 서로 바꾸어줄 수도 있습니다. 대표적인 포인터를 이용한 함수 통신으로는 스왑(Swap)이 있습니다. #include void swap(int* _num1, int* _num2) { int tmp = *_num1; *_num1 = *_num2; *_num2 = tmp; printf("Swap!!\n"); } int main() { int num1 = 5..

Study/C언어

처음하시는 분들을 위한 C언어 기초강의 시즌2 - 17 [포인터]

제 17강) 포인터(Pointer) 오늘은 정말 정말 정말 정말 정말 정말 정말 정말 정말 정말 정말 정말 중요한 시간입니다. 바로 포인터에 대해서 배우는 시간이기 때문이죠. 1) 공포의 대상, 포인터 C언어에서 가장 공포스럽다고 느껴지는 대상인 포인터입니다. 포인터란? (출처 : 위키백과) 포인터는 다른 변수, 혹은 그 변수의 메모리 공간주소를 가리키는 변수를 말한다. 이때 포인터가 가리키는 값을 가져오는 것을 역참조(Dereferencing)라고 한다. 위의 설명은 "위키페디아"에 나온 설명입니다. 사실 정말 잘 설명되어있습니다. 하지만 이게 무슨 말인가 라고 하시는 분들이 많으시겠죠. 우리는 "4강 변수"에서 변수에 대해서 배울때 다음과 같이 배웠습니다. 변수는 "어떤 데이터를 저장하는 메모리 공간..

Study/C언어

처음하시는 분들을 위한 C언어 기초강의 시즌2 - 20 [함수 포인터]

제 20강) 함수 포인터 오늘은 함수 포인터에 대해서 알아봅니다. 상당히 어렵다면 어려울 수 있는 부분이라 여러번 읽어보셔야 할겁니다. 1) 함수 포인터란 포인터는 포인터인데 함수를 가리키는 포인터를 뜻합니다. int num = 5; int* ptr = # int arr[] = { 1, 2, 3 }; int* ptrArr = arr; 변수나 배열을 포인터로 연결할때는 위와 같이 사용했습니다. 자료형 (*포인터_함수명)(함수의_인자...) = 연결할_함수; // 예1) int addFunc(int num1, int num2) { return num1 + num2; } // 위의 addFunc함수에 연결하는 포인터 int (*addFuncPointer)(int, int) = addFunc; // 예2) vo..

Study/C언어

처음하시는 분들을 위한 C언어 기초강의 시즌2 - 18 [배열과 포인터]

제 18강) 배열과 포인터 오늘은 배열을 배우고 포인터를 한 번 더 배웁니다. 포인터와 배열은 일심동체이기 때문이죠. 1) 변수의 집합, 배열 배열은 변수의 집합입니다. int num1, num2, num3; 이렇게 변수 3개를 따로따로 선언했던 것을 int arr[3]; 배열은 한 번에 선언을 가능케 합니다. 자료형 배열이름[배열의_크기]; 자료형 배열이름[배열의_크기] = { 초기값 }; 배열은 위와 같이 변수처럼 선언을 하지만 중괄호 사이에 배열의 크기를 지정하게 됩니다. int arr[3]; int arr[3] = { 1, 2, 3 }; 이렇게 사용이 가능케 됩니다. 이렇게 배열을 선언하게 되면 "배열의 크기"만큼 변수가 선언되지만 그 시작은 0부터 입니다. int arr[3]; // -> arr..

Eskeptor
'포인터' 태그의 글 목록