// example10_6.c
#include <stdio.h>
void printValue(void *ptr, char type) {
switch (type) {
case 'i': // intํ์ผ๋ก ํด์
printf("%d\n", *(int*)ptr);
break;
case 'f': // floatํ์ผ๋ก ํด์
printf("%f\n", *(float*)ptr);
break;
case 'c': // charํ์ผ๋ก ํด์
printf("%c\n", *(char*)ptr);
break;
default:
printf("์ ์ ์๋ ํ์
์
๋๋ค.\n");
break;
}
}
int main(void) {
int i = 23;
float f = 4.5f;
char c = 'z';
printValue(&i, 'i'); // intํ ๋ณ์ i๋ฅผ void*๋ก ๋๊ธฐ๊ณ 'i'๋ก ํด์
printValue(&f, 'f'); // floatํ ๋ณ์ f๋ฅผ void*๋ก ๋๊ธฐ๊ณ 'f'๋ก ํด์
printValue(&c, 'c'); // charํ ๋ณ์ c๋ฅผ void*๋ก ๋๊ธฐ๊ณ 'c'๋ก ํด์
return 0;
}