#include "stdlib.h" #include "stdio.h" #include "string.h" char * reverse(char *str) { int index,len; len=strlen(str)-1; for(index=0;index<len;index++,len--) { /* 不用中间变量实现值的交换 */ str[index]^=str[len]; str[len]^=str[index]; str[index]^=str[len]; } return str; } /* 声明函数指针 */ void (*fun)(char*); main() { char string[]="asdfghjkl"; /* 函数指针指向定义的函数地址 */ fun=&reverse; (*fun)(string); printf("[%s]\n",string); }
原文:http://blog.csdn.net/linux_complete/article/details/21535737