#include
#include
void main(void)
{
char sz1[20]="I Love ";
char sz2[20]="chaina";
char* (*pFun)(char *,char *);
pFun=strcat;
(*pFun)(sz1,sz2);
printf("%s",sz1);
pFun=&strcpy;
pFun(sz1,sz2);
printf("\n%s",sz1);
getch();
}
char* (*pFun)(char ,char *);改为
char (*pFun)(char *,const char *);
忘了你用的是古老的VC6.0,这个编译器对C/C++标准都支持的不好,你main函数写成返回void(而不是int)都没问题,检查一下你环境配置是否有问题。
#include <stdio.h>
int main(void)
{
char sz1[20]="I Love ";
char sz2[20]="China";
char* (*pFun)(char *,const char *);
pFun=strcat;
(*pFun)(sz1,sz2);
printf("%s",sz1);
pFun=&strcpy;
pFun(sz1,sz2);
printf("\n%s",sz1);
}
#include <string.h>
额额
感觉提问者其实include了两个头文件的,只是csdn上没显示出来罢了。试试下面的修改(不知道我贴的回答能否显示出来):
(*pFun)(sz1,sz2);改为pFun(sz1,sz2);
pFun=&strcpy;改为pFun=strcpy;