Dream丶OP
2015-01-25 22:00
如果s1长度为100,s2长度为20,那么strcpy(s1,s2)长度为多少
strcpy(char *dest, const char *src)
这个函数把src字符串中的字符(包括结尾的'\0')拷贝到dest所指的内存中。
要注意的是:要拷贝到s2中的'\0'字符才会停止,所以如果dest容纳不了这么多的字符,那么dest中的字符串可能不是'\0'结尾。
例子:
char s2[20]; // 假设里面有19个字符(结尾是一个'\0') char s1[100]; srtcpy(s1, s2);
现在s1的前20个字符就是s2中的19个字符和结尾的一个'\0'。而s1中剩余部分中的原有内容不会改变。
楼上说的时错的 strcpy是拷贝函数 将2字符复制给1 s1中剩余内容全都除去
前边比后边的字符串大(s1 > s2)不用想, 长度为s2的长度(字符型一直到s2中得\0结束)
如果是 char s1[100]=""; char s2[20]="";这样的话strcpy(s1,s2)之后,s1的长度为0
如果是s2中有内容的话,那么就是以s2的长度为准
C语言入门
926028 学习 · 20793 问题
相似问题