In the C language, pointers are also variables, and pointers hold memory addresses.
Reference to the pointer:
int a = 0;
int * person = &a;//can be taken to the address of variable a
printf ("\d\n", *person);//The value corresponding to variable a
Pointers as function parameters: pointers as parameters of the function, the address of a variable to the function inside, you can make judgments in the inside of the change.
Pointers as function return values: Note that if the returned pointer is local, you need to decorate the variable with static, otherwise there is a warning.
void *: Void type pointers are generally used for void*, common types;
Array of pointers: int arr[] = {1,2,3,4};
As defined in an int array, int * p = &arr; gets to the first address of an ARR array, generally the int type takes up 4 bytes, so the data behind the array can be taken out.
Note: The length of an array can be obtained by sizeof (ARR)/sizeof (int).
c--pointer