본문 바로가기
728x90
반응형
SMALL

전체 글380

chapter 15) 함수 포인터를 사용한 함수 호출 #include int sum(int, int); int main(void){ int (*fp)(int, int); int res; fp = sum; res = fp(10,20); printf("result : %d\n", res); return 0; } int sum(int a, int b){ return (a + b); } ### 코드 설명 이 프로그램은 함수 포인터를 사용하여 두 정수의 합을 계산하는 예제입니다. C언어에서 함수 포인터의 사용은 함수를 변수처럼 취급하고, 이를 통해 다양한 함수를 동적으로 호출할 수 있게 합니다. ### 함수 포인터 선언 및 사용 - `int sum(int, int);`는 두 정수를 매개변수로 받아 그 합을 반환하는 `sum` 함수를 선언합니다. - `int (*fp.. 2024. 9. 17.
chapter 15) void 포인터 사용 #include int main(void){ int a = 10; double b = 3.5; void *vp; vp = &a; printf("a : %d\n", *(int *)vp); vp = &b; printf("b ; %.1lf\n", *(double *)vp); return 0; } 이 코드는 `void` 포인터의 사용법을 설명하는 예제입니다. `void` 포인터는 특정 타입이 정해지지 않은 포인터로, 어떠한 타입의 주소도 저장할 수 있습니다. 이 코드에서는 `void` 포인터를 사용하여 정수형 변수 `a`와 실수형 변수 `b`의 주소를 순차적으로 저장하고, 이를 다시 역참조하여 값을 출력합니다. ### 코드 설명 - `int a = 10;`와 `double b = 3.5;`를 통해 정수형 변수 .. 2024. 9. 16.
chapter 15) 포인터와 이중 포인터의 관계 #include int main(void){ int a = 10; int *pi, **ppi; pi = &a, ppi = π printf("----------------------------------------------\n"); printf("변수 변숫값 &연산 *연산 **연산\n"); printf("----------------------------------------------\n"); printf(" a%10d%10%10u\n", a, &a); printf(" pi%10u%10u%10d\n",pi, &pi, *pi); } ### 코드 설명 이 프로그램은 변수, 포인터, 이중 포인터의 개념을 설명하기 위해 작성되었습니다. 변수 `a`, 포인터 `pi`, 그리고 이중 포인터 `ppi`를 사용하여 .. 2024. 9. 15.
chapter 15) 포인터 배열의 값을 출력하는 함수 #include void print_str(char **pps, int cnt); int main(void){ char *ptr_ary[] = {"eagle", "tiger", "lion", "squirrel"}; int count; count = sizeof(ptr_ary)/ sizeof(ptr_ary[0]); print_str(ptr_ary, count); return 0; } void print_str(char **pps, int cnt){ int i; for (i = 0; i< cnt; i++){ printf("%s\n", pps[i]); } } ### `main` 함수 - `char *ptr_ary[] = {"eagle", "tiger", "lion", "squirrel"};`는 문자열의 배열을.. 2024. 9. 14.
728x90
반응형
LIST