Можно ли разыменовать пустой указатель без приведения типов в языке программирования C?
Кроме того, есть ли способ обобщить функцию, которая может получить указатель и сохранить его в пустом указателе, и с помощью этого пустого указателя мы можем сделать обобщенную функцию?
например ::1005 *
void abc(void *a, int b)
{
if(b==1)
printf("%d",*(int*)a); // If integer pointer is received
else if(b==2)
printf("%c",*(char*)a); // If character pointer is received
else if(b==3)
printf("%f",*(float*)a); // If float pointer is received
}
Я хочу сделать эту функцию общей без использования операторов if-else - возможно ли это?
Также, если в Интернете есть хорошие статьи, в которых объясняется концепция пустого указателя, было бы полезно, если бы вы могли предоставить URL-адреса.
Также возможна ли арифметика указателей с пустыми указателями?