c语言的strcpy函数

strcpy是用于复制字符串的函数

 1 #include <stdio.h>
 2 #include <string.h>
 3 int main(void)
 4 {
 5     char s[20]="abcdefg",*p="ABC";
 6     int i=0;
 7     strcpy(s+2,p);
 8     printf("%s\n",s);
 9     for(;i<7;i++)
10       printf("%c",s[i]);
11
12 }

上面这个程序输出的结果为

//abABC
//abABCg

为什么输出字符串%s时s是abABC,而输出字符%c时s是abABCg呢

因为strcpy函数本身的性质:复制字符串直到’\0’结束符为止,并且连同结束符一起复制到s中;因此内存中存储到s实际上是abABC\0g;但是由于字符串的特性是输出到结束符结束,所以输出的结果为abABC;而循环输出字符时则是abABCg,是实际内存储存的s内容。

原文地址:https://www.cnblogs.com/shellingfordly/p/11241488.html

时间: 2024-08-04 13:39:17

c语言的strcpy函数的相关文章

【C语言】strcpy函数的实现

strcpy函数的基本内容: 原型声明:extern char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 和 #include <stdio.h> 功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串. 返回指向dest的指针. 知道函数的内容了,接下来我们就可以简单实现这个函数:

转:C语言字符串操作函数 - strcpy、strcmp、strcat、反转、回文

转自:C语言字符串操作函数 - strcpy.strcmp.strcat.反转.回文 作者:jcsu C语言字符串操作函数 1. 字符串反转 - strRev2. 字符串复制 - strcpy3. 字符串转化为整数 - atoi4. 字符串求长 - strlen5. 字符串连接 - strcat6. 字符串比较 - strcmp7. 计算字符串中的元音字符个数8. 判断一个字符串是否是回文1. 写一个函数实现字符串反转 版本1 - while版 void strRev(char *s){    

C语言--strcpy()函数

strcpy,即string copy(字符串复制)的缩写. strcpy是一种C语言的标准库函数,strcpy把含有''\0'结束符的字符串复制到另一个地址空间,返回值的类型为char*. C语言 strcpy() 函数用于对字符串进行复制(拷贝). 头文件:string.h 语法/原型: char* strcpy(char* strDestination, const char* strSource); 参数说明: strDestination:目的字符串. strSource:源字符串.

c语言常用函数strcmp函数和strcpy函数

(一)strcmp函数 strcmp函数是比较两个字符串的大小,返回比较的结果.一般形式是: i=strcmp(字符串,字符串); 其中,字符串1.字符串2均可为字符串常量或变量:i   是用于存放比较结果的整型变量.比较结果是这样规定的: ①字符串1小于字符串2,strcmp函数返回一个负值; ②字符串1等于字符串2,strcmp函数返回零; ③字符串1大于字符串2,strcmp函数返回一个正值;那么,字符中的大小是如何比较的呢?来看一个例子. 实际上,字符串的比较是比较字符串中各对字符的AS

C语言文件操作函数的编写

 编写文件操作的头文件 /************************************************************************** Copyright(C)    :2014-08-5 toto Filename       :file.h Author          :涂作权 Version         :V1.1 Date            :2014-08-05 Description     :文件操作的头文件 Others  

C语言-字符操作函数

1字符数组的初始化: 1.1 char string={'c','h','i','n','a'} 1.2char string={"china"}或者去掉{}即char string=“china" 1.3 strcpy(string,"china") 2字符串长度:字符串长度函数strlen(char string)=字符的个数+1(结束符"\0") 3输入与输出:printf("\s",string) scanf

黑马程序员——c语言学习心得——函数传递二维数组

黑马程序员——c语言学习心得——函数传递二维数组 -------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.定义指针的时候一定要初始化.   变量定义的时候给变量初始化,这是保证不出错的一个很好的习惯.尤其是在指针的使用上,如果我们没有给指针初始化,就会出现野指针,该指针的指向并不是我们所希望的,一旦错误的释放了这个指针,就会发生内存的访问.那么如何初始化指针变量呢,一般有以下几种方法:   1.初始化空指针   int* pInteger=N

通过编写字符复制函数strcpy函数学编程

首先我们先来开一下标准函数中的strcpy长什么样子 C语言标准库函数strcpy,把从src地址开始且含有'\0'结束符的字符串复制到以dest开始的地址空间. 原型声明:char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 和 #include <stdio.h> 功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间 说明:src和dest所指内存区域不可以重叠且des

C语言字符串处理函数

函数名: strcpy 功  能: 拷贝一个字符串到另一个 用  法: char *stpcpy(char *destin, char *source); 程序例: #include <stdio.h> #include <string.h> int main(void) {    char string[10];    char *str1 = "abcdefghi";    stpcpy(string, str1);    printf("%sn&