#include <stdio.h> // Требуется для prinf()
void print(void *arg){ // Первый void указывает что функция не возвращает значения, второй на универсальный указатель
printf("int = %d \n", *(int *)arg); // Преобразует и выводит аргумент как int
printf("float = %f \n", *(float *)arg); // Преобразует и выводит аргумент как float
printf("double = %f \n\n", *(double *)arg); // Преобразует и выводит аргумент как double
}
int main(){
int i = 10;
float f = 1.3;
double d = 2.7f;
print(&i);
print(&f);
print(&d);
return 0;
}
Вывод программы:
int = 10 float = 0.000000 double = 0.000000 int = 1067869798 float = 1.300000 double = 0.000000 int = -1610612736 float = -0.000000 double = 2.700000