标题:关于指针返回值的问题
只看楼主
zhankq
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2007-9-22
 问题点数:0 回复次数:3 
关于指针返回值的问题
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 string1[80]="I have a computer.";
char string2[]="I learn C language.",*pt;
pt=strcat(string1,string2);
printf("the new string is:%s\0",pt);/*6*/
}
为什么6这个地方输出的是一个地址却能输出一个完整的字符串,难道字符串本身就是一个地址吗?
搜索更多相关主题的帖子: 返回值 指针 char strcat 
2007-09-27 16:44
viky2003
Rank: 5Rank: 5
等 级:职业侠客
帖 子:375
专家分:383
注 册:2007-4-11
得分:0 
这就是字符串和地址的关系!

要练习算法就来http:///!!有挑战哦!!
2007-09-27 16:55
zzjking
Rank: 1
等 级:新手上路
帖 子:69
专家分:0
注 册:2007-7-16
得分:0 

pt 指向的是字符串首地址,当然打印的是整个字符串了~


2007-09-27 16:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-173362-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012812 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved