1,函数指针
顾名思义,即指向函数的指针,功能与其他指针相同,该指针变量保存的是所指向函数的地址。
假如是void类型函数指针定义方式可以是 void (*f)(参数列表);亦可以先用 typedefvoid (*F)(参数列表),
F f.但要注意函数指针的类型要与函数类型相同.
下面举个简单的例子
1 #include<stdio.h> 2 #include<stdlib.h> 3 typedef void (*F)(); 4 5 void print_hello() //简单定义一个无参数的打印函数 6 { 7 printf("hello ~\n"); 8 } 9 10 void main()11 {12 F f1; //此处相当于 void (*f1)();13 void (*f2)();14 15 f1 = print_hello;16 f2 = print_hello;17 18 f1();19 f2();20 21 system("pause");22 }
View Code
2,指针函数
指针函数即返回值为指针的函数。例如 int *a()、char *b()…分别代表返回值为整形指针,字符型指针的函数。
下面举个简单的例子
#include<stdio.h>#include<stdlib.h>char *str() //定义一个返回值为字符指针的函数{ char *a = "hello world ~"; return a;}void main(){ char *c = str(); //可以在定义的时候同时赋值 char *b; //也可以先定义,后赋值 b = str(); printf("%s\n%s\n",c,b); system("pause");}
View Code
关于爱情的句子:情不知所起,一往而情深。