값을 서로 뒤바꿔야 하는 함수인 swap 이라는 함수
포인터가 없는 상태로는 값을 서로 뒤바꿀수가 없다
방법 1
#include "prc.hpp" void swap (int* a, int* b) { int temp; temp = *a; *a = *b; *b = temp; } int main(){ int v1 = 100; int v2 = 200; swap(&v1, &v2); printf("v1 : %d\nv2 : %d\n", v1, v2); return 0; } |
방법 2
#include "prc.hpp" void swap (int& a, int& b) { //int의 reference 타입, 변수 그 자체를 가져온다 생각 int temp; temp = a; a = b; b = temp; } int main(){ int v1 = 100; int v2 = 200; swap(v1, v2); printf("v1 : %d\nv2 : %d\n", v1, v2); return 0; } |
근데 일단 방법 1 만 쓸 것임
'C언어' 카테고리의 다른 글
심화 C 언어 7 (포인터 - 포인터의 포인터, 함수의 파라미터의 포인터) (0) | 2021.08.04 |
---|---|
심화 C 언어 6 (포인터 3 - 메모리 동적할당 / 배열) (0) | 2021.08.03 |
심화 C 언어 4 (포인터 1 - 기초) (0) | 2021.07.31 |
심화 C 언어 3 (문자열 - 문자의 '배열') (0) | 2021.07.30 |
심화 C 언어 2 (각종 변수형 - 모든 코딩에서 찾아볼 수 있는 '기본 자료형') (0) | 2021.07.27 |