一个奇怪的C语言问题: 用户自定义函数和标准库函数重复时,运行时调用哪个?

//#include<stdio.h>char*strcat(char*str1,constchar*str2);intstrcmp(constchar*str1,con... //#include <stdio.h>
char *strcat( char *str1, const char *str2);
int strcmp( const char *str1, const char *str2 );
char *strcat( char *str1, const char *str2 )
{

return str1;
}
int strcmp( const char *str1, const char *str2 )
{

return 100;
}
int main()
{

int a = 0;
char buf[10] ="123";
strcat(buf, "123");
printf("buf = %s\r\n", buf);

a = strcmp("123", "156");
printf("a = %d\r\n", a);

return 0;
}

运行结果:
buf = 123
a = -1
请按任意键继续. . .
展开
 我来答
匿名用户
2015-02-01
展开全部
首先你没有包含STRING.H文件,没有指定使用系统定义的函数。其次,如果指定的话,在C编译器里会报错,在C++编译器里会先执行自定义的,再执行系统的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wuiiao333
2015-01-29 · TA获得超过799个赞
知道小有建树答主
回答量:666
采纳率:0%
帮助的人:200万
展开全部
你并没有包含#include<string.h>

所以使用你的·`
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xStraybird55678
2015-01-29 · 超过13用户采纳过TA的回答
知道答主
回答量:28
采纳率:0%
帮助的人:17.5万
展开全部
调用自定义的那个函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-01-29
展开全部
会调用自定义的同名函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式