-
指针函数
指针函数本质是一个函数,只不过函数的返回值是一个指针/地址。
-
函数指针
函数作为一段程序,在内存中也要占据部分存储空间,它也有一个起始地址,即函数的入口地址。函数有自己的地址,我们的指针变量就是用来存储地址的。因此,可以利用一个指针指向一个函数。其中,函数名就代表着函数的地址。
char *fun3(){
char *str = "1 This is string.";
return str;
}
char *fun4(){
char *str = "2 This is string.";
return str;
}
char *fun5(char *str){
printf("%s\n", str);
}
void func()
{
printf("XXXXXXXXX!\n");
}
int main(){
fun2();
printf("%s %p\n",fun3(),fun3);
printf("%s %p\n",fun4(),fun4);
fun5(fun3());
char *(*funcP)(); //定义函数指针
funcP = fun4; //初始化函数指针 指向fun4函数
(*funcP)();
fun5((*funcP)());
return 0;
}