august 发表于 2007-4-14 15:51:16

运行问题

#include<stdio.h>
char *strcat(char *str1,char *str2)
{
    char *p;
    for(p=str1;*p!='\0';p++);
    do
    {
      *p++=*str2++;
    }while(*str2!='\0');
    *p='\0';
    return(str1);
}
main()
{
    char *strcat(char *str1,char *str2);
    char string1="i have a computer.";
    char string2[]="i learn c language.";
    char *pt;
    pt=strcat(string1,string2);
    printf("the new string is :%s\n",pt);
}

上面这段程序在Turboc 中可以运行,但为什么在VC++中却运行不了呢??

Miliardo 发表于 2007-4-14 17:10:39

汗一个……手上没有VC没办法帮楼主看……
GCC 3.4.5/MinGW编译通过……

不过strcat似乎是C运行库中的函数(似乎在string.h中?),大概VC是因为重复链接(存在两个同名全局函数)所以出错了……

希德船长 发表于 2007-4-15 11:52:30

在我手上的vc++6.0下编译通过,运行结果准确无误。
页: [1]
查看完整版本: 运行问题