标题:近来看看,是编译器问题还是程序错误(问题解决)
取消只看楼主
huangfengchu
Rank: 1
等 级:新手上路
威 望:2
帖 子:274
专家分:0
注 册:2007-5-22
 问题点数:0 回复次数:2 
近来看看,是编译器问题还是程序错误(问题解决)

这是合并两字符串一试验。运行输出不对。

#include"stdio.h"
int main(void)
{
void concat(char result[],const char str1[],const str2[]);
const char s1[]="Test ";
const char s2[]="works.";
char s3[20];

concat(s3,s1,s2);
printf("%s\n",s3);
getch();
return 0;
}
void concat(char result[],const char str1[],const str2[])
{
int i,j=0;
for (i=0;str1[i]!='\0';++i)
result[i]=str1[i];

for(;str2[j]!='\0';++j)
result[i+j]=str2[j];
result[i+j]='\0';
}
输出为Test wrs,就没了,好象result[i+j]这里每次i的值也好象在这样加?请指示下。

[此贴子已经被作者于2007-6-16 0:28:48编辑过]

搜索更多相关主题的帖子: void include return 编译器 
2007-06-15 23:13
huangfengchu
Rank: 1
等 级:新手上路
威 望:2
帖 子:274
专家分:0
注 册:2007-5-22
得分:0 

郁闷,我瞎眼了,现在才发现第二个参数没加char,晕死。。。
const 是传递给函数,但不改变其值,C中也可以用,谢谢楼上,我发现我很瞎子。


深山苦学C语言,终年不见外面世界。
2007-06-15 23:34
huangfengchu
Rank: 1
等 级:新手上路
威 望:2
帖 子:274
专家分:0
注 册:2007-5-22
得分:0 
谢谢楼上,我参考下。

深山苦学C语言,终年不见外面世界。
2007-06-16 00:21



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




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

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