strcpy  复制字符串函数

#include<stdio.h>
#include<assert.h>
char *strcopy(char * strDest , const char * strSrc);
int main()
{
    char string[15];
	char str1[10]="012345678";
	strcopy(string,str1);

    printf("%s",string);

}

char *strcopy(char * strDest , const char * strSrc)
{
     char * r=strDest;    

	 assert((strDest!=NULL)&&(strSrc!=NULL));

	 while( ( *strDest++ = *strSrc++ )!=‘\0‘);
	     return r;
}

// 注意事项  const 修饰 ,空指针检查,返回目标地址,‘\0‘
strcpy返回目标串的地址,这个返回值的目的是可以使strcpy用在链式表达式中,增加灵活性
比如
char s1[]="12345";
char s2[100];
int len;
len=strlen(strcpy(s2,s1+1)); //从s1的第二个字符开始复制内容到s2,并且计算出s2的长度

				
时间: 2024-08-18 21:09:31

strcpy  复制字符串函数的相关文章

各种字符串函数(strcpy,strcmp,strlen)之深度剖析

//字符串复制函数1 void strcpy1(char str1[], char str2[]){ int i = 0; for (; str2[i] != '\0'; i++){ str1[i] = str2[i]; } str1[i] = '\0'; } //2 void strcpy2(char str1[], char str2[]){ int i = 0; while (str1[i] = str2[i])i++; } //字符串长度函数1 int strlen1(char str[

字符串函数---strcpy()与strncpy()详解及实现

一.strcpy()与strncpy() strcpy():strcpy(dest,src);    strcpy把src所指向以'\0'结尾的字符串复制到dest所指的数组中,返回指向dest的指针. 当sizeof(dest)>=sizeof(src)时,拷贝正确,并在dest字符串后面加入'\0'; 当sizeof(dest)<sizeof(src)时,拷贝出错. strncpy():strncpy(dest,src,n);    strncpy把src所指向以'\0'结尾的字符串的前n

C/C++字符串函数之复制函数

突然发现对字符串函数缺乏系统的了解,所以花了一点时间专门整理下,在此记录之,以方便自己及有需要的人使用. C/C++字符串函数的头文件:string.h 复制函数主要有4个,如下: 1.char * strcpy(char* destination,const char * source); 2.char* strncpy(char* destination,const char* source,size_t num); 3.void * memcpy(void* destination,con

strcpy, memcpy, memset函数

一. strcpy函数 原型声明:char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 和 #include <stdio.h> 功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 返回指向dest的指针. 实现代码: char * strcpy(char * strDest,c

常用字符串函数集合

随着计算机科学的发展和计算机应用的推广,对字符串的处理越来越成为计算机的一项重要能力.当然,在acm中也时常要用到.现在,我就来总结下在acm中必须掌握的字符串函数: 出现的顺序是按在acm中的使用频率来排的. 头文件:#include<string.h> / #include<cstring> ,分别为 C 和 C++中的头文件. 1.extern unsigned int strlen(char *s); ------>> 说明: 求字符串的长度,即字符串中字符的个

python字符串函数

#连接字符串 sStr1 = 'strcat'sStr2 = 'append'sStr1 += sStr2print(sStr1) #复制字符串sStr1 = 'strcpy'sStr2 = sStr1sStr1 = 'strcpy2'print(sStr2) #比较字符串#strcmp(sStr1,sStr2)sStr1 = 'strchr'sStr2 = 'strch'print(sStr1 == sStr2)#注意cmp()在python3中移除了! #截取字符串#特别注意:下标从0开始:

模拟实现常用字符串函数

1.查找子字符串函数strstr的实现 char *  my_strstr(const char * dest, const char * src)//const保护字符串不被更改 { assert(dest); assert(src);     //断言 char * ptr1 = NULL; char * ptr2 = src; while (*dest) { ptr1 = dest;//保留匹配成功后的位置指针 src = ptr2;//保留匹配失败后,字串的同样指针 while (*de

【Linux C中文函数手册】之 内存和字符串函数

内存和字符串函数 1) bcmp 比较内存内容 相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp表头文件 #include<string.h>定义函数 int bcmp ( const void *s1,const void * s2,int n);函数说明 bcmp()用来比较s1和s2所指的内存区间前n个字节,若参数n为0,则返回0.返回值 若参数s1 和s2 所指的内存内容都完全相同则返回0 值,否则返回非零值.附加说明 建议

C语言中strcpy与memcpy函数实现与区别

C语言中strcpy与memcpy函数是怎么实现的又有哪些区别呢?下面就与我来简单的介绍下吧,希望大家多给点意见,欢迎评论纠正错误. 6.2 字符串与数组 字符串一般是用字符数组的方式存储,例如下面的str定义: char str[] = "123456"; 这里str是一个字符数组,它存放了一个字符串"123456",由于字符串还有一个结束符"\0",所以此数组的长度为7而不是6. 6.2.1 strcpy函数与memcpy函数 strcpy和