#include <stdio.h>
#include <string.h>
#include <ctype.h>
#define SIZE 81
void ToUpper(char * str);
void HandleStr(void (*pf)(char *), char * str);
int main(void)
{
char str[SIZE];
puts("输入字符串");
gets(str);
void (*pf)(char *);
pf = ToUpper;
HandleStr(pf, str);
puts(str);
return 0;
}
void HandleStr(void (*pf)(char *), char * str)
{
(*pf)(str);
}
void ToUpper(char * str)
{
while(*str)
{
*str = toupper(*str);
str++;
}
}
pf为函数指针,指向函数地址。
函数声明:
void ToUpper(char * str);
函数指针定义:
void (*pf)(char * str);
将ToUpper换成*pf即可,如此pf即为指向函数的指针