Ex1
#include <stdio.h>
int add(int x, int y){
return x+y;
}
int sub(int x, int y){
return x-y;
}
int mult(int x, int y){
return x*y;
}
int calc(int x, int y, int (*op)(int,int)){
return op(x,y);
}
int main(void){
int z = calc(3,2,add);
printf("%d\n",z);
return 0;
}
Ex2
The same as above, but with typedef.
#include <stdio.h>
typedef int (*opt)(int, int);
int add(int x, int y){
return x+y;
}
int sub(int x, int y){
return x-y;
}
int mult(int x, int y){
return x*y;
}
int calc(int x, int y, opt op){
return op(x,y);
}
int main(void){
int z = calc(3,2,add);
printf("%d\n",z);
z = calc(3,2,sub);
printf("%d\n",z);
z = calc(3,2,mult);
printf("%d\n",z);
return 0;
}'프로그래밍 > C' 카테고리의 다른 글
| C 코드를 어셈블리로 컴파일하기 (0) | 2026.08.01 |
|---|---|
| Weak symbols (0) | 2026.07.11 |
| strtok (0) | 2026.04.22 |