实现strcat功能

实现两个字符串相连

 1 #include<stdio.h>
 2 #include<string.h>
 3
 4 //把源字符串连接到目的字符串中
 5 char *strcat1(char *dest,const char *src)
 6 {
 7     int i=0;
 8     int n=strlen(dest);
 9
10     if((dest != NULL) && (src != NULL))        //源指针和目的指针不能为NULL
11     {
12         for(i=0;src[i] != ‘\0‘;i++)
13         {
14             dest[n+i] = src[i];
15         }
16         dest[n+i] = ‘\0‘;
17     }
18
19     return dest;
20 }
21
22 //从源字符串中,连几个字符到目的字符串中
23 char *strcat2(char *dest,const char *src,int num)
24 {
25     int i=0;
26     int n= strlen(dest);
27
28     if((dest != NULL) && (src != NULL))        //源指针和目的指针不能为NULL
29     {
30         for(i=0;i<num && src[i] != ‘\0‘;i++)
31         {
32             dest[n+i] = src[i];
33         }
34         dest[n+i] = ‘\0‘;
35     }
36
37     return dest;
38 }
39
40
41 int main()
42 {
43     char a[20]="hello ";
44     char *p="world!123";
45     //测试strcat1函数
46     strcat1(a,p);
47     printf("After strcat1 function,a=%s\n",a);
48
49     //测试strcat2函数
50     char b[20]="beautiful ";
51     strcat2(b,p,6);
52     printf("After strcat2 function,b=%s\n",b);
53
54     return 0;
55 }
时间: 2025-01-01 11:54:42

实现strcat功能的相关文章

C语言字符串函数大全

转载自http://www.360doc.com/content/08/0723/22/26860_1462024.shtml# 函数名: stpcpy 功能: 拷贝一个字符串到另一个 用法: char *stpcpy(char *destin, char *source); 程序例: #include<stdio.h> #include<string.h> int main(void) { char string[10]; char *str1 = "abcdefghi

C语言从零开始(十四)-字符串处理

在软件开发过程中,字符串的操作相当频繁.在标准C语言库中提供了很多字符串处理的函数.今天我们来介绍一些常用的字符串处理函数.1. 字符串输入输出1.1 printf() scanf() 之前我们学习过使用"%c"进行字符的输入输出.字符串的输入输出大体相同,唯一的区别是采用"%s". 请看下面这段代码: int main() { char str[10]; printf("Please input 10 words:\n"); scanf(&qu

c语言-数组+字符串处理函数

一.构造类型 基本概念: (1)在C语言中,变量类型除了几种基本类型之外,还有另外一些复杂类型,合称为构造类型. (2)构造类型:是由基本类型构造而成的(如数组.结构体.共同体.枚举型). (3)构造类型的每一个分量是一个变量,它可以是一个简单类型或者构造类型. (4)构造类型的分量的使用方法与简单变量相同 (5)构造类型的分量占用相邻的存储空间. (6)对于构造类型的变量来说,重点是访问其分量的方法. 二.数组 数组概念:按序排列的具有相同类型的变量的集合 (1)用一符号名(数组名)来表示这一

自己实现strcat函数的功能。(假如字符数组足够大)

#include <stdio.h>#include <string.h> /*自己实现strcat函数的功能.(假如字符数组足够大)*/ void main(){ char str1[100] = "helloworld"; char str2[100] = "world"; int i = 0; int index = strlen(str1); for(i = 0; i <= strlen(str2); i++) { str1[i

编写一个程序实现strcat函数的功能

写自己的strcat函数------→mycat 1 #include <stdio.h> 2 #include <string.h> 3 #define N 5 4 5 char *mycat(char *s1, char *s2) 6 { 7 //数组型 8 /* int i = 0; 9 while(s1[i] != '\0') { 10 i++; 11 } 12 int j = 0; 13 while(s2[j] != '\0') { 14 s1[i] = s2[j]; 1

编写程序实现strlen()函数,strcmp(),strcpy(),strcat()的功能

1.strlen()函数的实现(求字符串长度的函数) #include <stdio.h> #include <assert.h> int my_strlen(const char *str) {   int count=0;   assert(str!=NULL);   while(*str)   {     count++;                 str++;   }   return count; } int main() {   char *string= &qu

C语言::模拟实现strcat函数

题目要求 编写一个C语言程序模拟实现strcat函数. (我们不妨先模拟实现一下strcat函数,然后再对照一下string.h库函数中strcat函数代码的实现,与大师肩并肩.) 算法分析 strcat函数功能:将两个字符串连接起来,最终返回连接后字符串的首地址. strcat函数原型:char *strcat(char *dest,const char *src); 我们清楚地了解了strcat函数功能和原型之后,就很容易分析出算法... 算法总结 第一步:将dest指向的内容循环遍历至'\

教教大家一些strcpy,strcmp,strcat,strlen函数的写法

VC源码: strcmp函数的写法: #include<stdio.h> #include<string.h> int strcmp1(char* a, char* b) { for(;*a==*b;a++,b++) if(*a!='\0') return 0; return *a - *b; } main() {  int l; char a[10]={"db"}; char b[10]={"cb"}; l=strcmp1(a,b); pr

strcat函数造成的段错误(Segmentation fault)

转自:http://book.51cto.com/art/201311/419441.htm 3.21  strcat函数造成的段错误 代码示例 int main() { char dest[7]="12345"; char* src = "abcdefghigklmnopqrstuvwxyz"; strcat(dest, src); cout << "dest:" << dest << endl; retur