, - . ( C) void *. A void * ( ), . - , , , , , , , . , , void - "". A void * , , , void * (, int *) .
, , (), char , int , double . , . , , . void *.
, void * : , ( ). , C , : char *, int *, double * ..
: (char *) void * my_ptr;
:
, :
char a_character = 'a';
char *a_char_ptr = &a_character;
, , , :
printf("%zu <> %zu\n", sizeof a_character, sizeof a_char_ptr);
- "1 < > 8" "1 < > 4", , . .
printf: %p:
printf("%c is the value stored at %p\n", *a_char_ptr, (void *) a_char_ptr);
( ), , void *. void - ; , , . , malloc, calloc realloc return, , . , char *? , 1 (sizeof(char)). , , : char * (char *) void *my_ptr;
, ? , - , , . char . int . : char *x char, char * ( char). , char *x , char.
, TL; TR:
, - (void * ). ( ). , , , C (, char *, int * ..). , , .