标题:求救啊,求救啊
只看楼主
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
得分:0 
嗯,也是。。。其实用指针比较方便

2008-07-24 10:40
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
得分:0 
回复 8# 病书生 的帖子
多谢你哥们,你的改正很仔细。。。。帮了我大忙。。。。。再次感谢
2008-07-24 10:42
Tolightup
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-7-24
得分:0 
#include<stdio.h>
char *link(char s1[],char s2[])
{
    char *p=s1,*q=s2;
    for(;*p!='\0';p++)
        ;            
    for(;*q!='\0';q++,p++)
        *p=*q;    
    *p='\0';
    p=s1;
    return p;
}
main()
{
    char s1[100],s2[50];
    gets(s1);
    gets(s2);
    printf("%s",link(s1,s2));
}
我试了,这样可以
2008-07-24 10:52
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
得分:0 
回复 5# 病书生 的帖子
#include<stdio.h>
void main()
{
 void connection(char string1[],char string2[]);
 char str1[50],str2[50];
 gets(str1);
 gets(str2);
 connection(str1,str2);
 printf("the result is %s\n",connection(str1,str2));
 }
 void connection(char string1[],char string2[])
 {
  char string[200];
  int i,j;
  for(i=0;string1[i]!='\0';i++)
   string[i]=string1[i];
   for(j=0;string2[j]!='\0';j++)
   string[i+j]=string2[j];
   string[i+j]='\0';
   }

哥们我把程序代码又改了改,这回就一个错误了,说是第九行not an allowed type in function main 哥们麻烦您针对我提出的问题帮我改改好吗?你的程序代码我看过了很不错。。。。
2008-07-24 10:56
病书生
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2007-11-8
得分:0 
printf("the result is %s\n",connection(str1,str2));
会调用connection(str1,str2)函数的返回值,而你的
connection(str1,str2)函数没有返回值可调用,
及时你加上一个return string 也没用,因为你把string 定义会了函数局部变量,当connection函数执行完后就会被释放掉,那么就无法调用
参考
#include<stdio.h>
char string[200];
void main()
{
void connection(char string1[],char string2[]);
char str1[50],str2[50];
gets(str1);
gets(str2);
connection(str1,str2);
printf("the result is %s\n",string);
}
void connection(char string1[],char string2[])
{
  int i,j;
  for(i=0;string1[i]!='\0';i++)
   string[i]=string1[i];
   for(j=0;string2[j]!='\0';j++)
   string[i+j]=string2[j];
   string[i+j]='\0';
}

[[it] 本帖最后由 病书生 于 2008-7-24 11:16 编辑 [/it]]
2008-07-24 11:05
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
得分:0 
回复 15# 病书生 的帖子
太感谢你了。。。。。。。。。。。。。。哥们。。。。
2008-07-24 13:33
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
得分:0 
回复 15# 病书生 的帖子
2008-07-24 13:34
漫天花雨
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2008-7-13
得分:0 
回复 15# 病书生 的帖子
#include<stdio.h>
void main()
{
char connection(char string1[],char string2[]);
char str1[50],str2[50];
gets(str1);
gets(str2);
connection(str1,str2);
printf("the result is %s\n",connection(str1,str2));
}
char connection(char string1[],char string2[])
{
  char string[200];
  int i,j;
  for(i=0;string1[i]!='\0';i++)
   string[i]=string1[i];
   for(j=0;string2[j]!='\0';j++)
   string[i+j]=string2[j];
   string[i+j]='\0';
   return(string[200]);
   }
倒是能运行,不过结果显示的是乱码。。。。。怎么搞的???
2008-07-24 14:20



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




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

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