C (포인터)


C (포인터)

대망의 포인터! 포인터 예제 중 가장 대표적인 swap 함수 구현이다. #include <stdio.h> void swap(int* x, int* y) { int temp; temp = *x; *x = *y; *y = temp; } int main() { int x = 1; int y = 2; swap(&x, &y); printf("x = %d\ny = %d", x, y); } x = 2 y = 1 실제로 두 변수의 값을 변환할 때는 포인터를 이용해서 함수를 만들어야 한다. 그 이유는 포인터를 이용하지 않게 되면 매개변수로 넘어온 값들은 함수 내에서만 처리가 되기 때문이다. 따라서 포인터를 이용하지 않은 경우에는 두 변수의 값이 바뀌지 않는다. int x = 100; int* y = &x; 라고 한다면 x의 값은 100을 담고 있고, y는 x의 주소값을 갖고 있다. 그리고 *y는 x의 값인 100을 나타낸다. 여기서 x, *y를 바꾸면 100이라는 값이 바뀌는 것이다. 내가 1학년 ...


#C언어 #대학생 #변수 #코딩 #포인터 #프로그래밍 #함수

원문링크 : C (포인터)