| 网站首页 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛 |
 
| 技术教程首页 | 开发语言 | WEB开发 | .NET技术 | 数据库 | 操作系统 | 网页制作 |
 
 
您现在的位置: 编程中国 >> 技术教程 >> 开发语言 >> C语言 >> C技术资料 >> 正文
  ►  连接两个字符串的几种方法
连接两个字符串的几种方法
作者:世外水源    阅读人次:……    文章来源:本站原创    发布时间:2006-10-14    网友评论()条
 

原帖及讨论:http://bbs.bccn.net/thread-85644-1-1.html

题目:编一程序,将两个字符串连接起来,不要用strcat函数。
第1种方法:

main()
{
char str1[10]="world!";
char str2[20]="hello ";
strcpy(str2+strlen(str2),str1);
printf("%s",str2);
}

第2种方法:

void copy_string(char from[],char to[])
{
int i=6;
while(from[i]!='\0')
   {to[i]=from[i];i++;}
to[i]='\0';
}
main()
{
char a[]="      word!";
char b[11]="hello ";
copy_string(a,b);
printf("\n%s\n",b);
}

由于我是菜鸟,第一种方法是在别人的帮忙下完成的,而第二种方法是自己想出来的。
不知道符不符合题目要求呢?
你们有别的见解的话,发表发表上来哦~

论坛会员论坛提供的方法:

程序代码:
#include        <stdlib.h>
#include        <stdio.h>
                                                                              

#define BUFFSIZE 80
                                                                              

int main(void)
{
        char    s1[BUFFSIZE] = "hello", s2[] = "china";
                                                                              

        sprintf(s1, "%s%s", s1, s2);
        printf("s1 = %s\n", s1);
                                                                              

        exit(0);
}

 

论坛会员nicksharp提供的方法:

程序代码:
#include<stdio.h>
void contact(char str[],const char str1[],const char str2[])
{
  in i,j;
  for(i=0;str1[i]!=’\0’;i++)
   str[i]=str1[i];
  
  for(j=0;str2[j]!=’\0’;j++)
    str[i+j]=str2[j];

   str[i+j]=’\0’
}
int main(void)
{
  void contact(char str[],const char str1[],const char str2[]);

  const char s1[]={"Test "};
  const char s2[]={"works."};
  char s3[12];
  contact(s3,s1,s2);
    printf("%s",s3);

getch();
return 0;
}

 

 
文章录入:静夜思    责任编辑:静夜思 
  • 上一篇文章:

  • 下一篇文章:

  •  
    相关文章
    原创地带
    24小时热门帖子