strcpy(拷贝字符串)
表头文件 #include 定义函数 char *strcpy(char *dest,const char *src); 函数说明 strcpy()会将参数src字符串拷贝至参数dest所指的地址。 返回值 返回参数dest的字符串起始地址。 附加说明 如果参数dest所指的内存空间不够大,可能会造成缓冲溢出(buffer Overflow)的错误情况,在编写程序时请特别留意,或者用
strncpy()来取代。 #include #include main() { char a[30] = "abcdefgh"; char b[] = "123456789"; printf("before strcpy() : %s\n",a); printf("after strcpy() : %s\n",strcpy(a,b)); } 运行结果: # gcc -o strcpy strcpy.c # ./strcpy before strcpy() : abcdefgh after strcpy() : 123456789 strncpy(拷贝字符串)
表头文件 #include相关函数 bcopy,memccpy,memcpy,memmove 定义函数 char * strncpy(char *dest,const char *src,size_t n); 函数说明 strncpy()会将参数src字符串拷贝前n个字符至参数dest所指的地址。 返回值 返回参数dest的字符串起始地址。 #include #include main() { char a[30] = "abcdefgh"; char b[] = "123456789"; printf("before strncpy() : %s\n",a); printf("after strncpy() : %s\n",strncpy(a,b,6)); } 运行结果:
# gcc -o strncpy strncpy.c
# ./strncpy before strncpy() : abcdefgh after strncpy() : 123456gh
表头文件 #include 定义函数 char *strcpy(char *dest,const char *src); 函数说明 strcpy()会将参数src字符串拷贝至参数dest所指的地址。 返回值 返回参数dest的字符串起始地址。 附加说明 如果参数dest所指的内存空间不够大,可能会造成缓冲溢出(buffer Overflow)的错误情况,在编写程序时请特别留意,或者用
strncpy()来取代。 #include #include main() { char a[30] = "abcdefgh"; char b[] = "123456789"; printf("before strcpy() : %s\n",a); printf("after strcpy() : %s\n",strcpy(a,b)); } 运行结果: # gcc -o strcpy strcpy.c # ./strcpy before strcpy() : abcdefgh after strcpy() : 123456789 strncpy(拷贝字符串)
表头文件 #include相关函数 bcopy,memccpy,memcpy,memmove 定义函数 char * strncpy(char *dest,const char *src,size_t n); 函数说明 strncpy()会将参数src字符串拷贝前n个字符至参数dest所指的地址。 返回值 返回参数dest的字符串起始地址。 #include #include main() { char a[30] = "abcdefgh"; char b[] = "123456789"; printf("before strncpy() : %s\n",a); printf("after strncpy() : %s\n",strncpy(a,b,6)); } 运行结果:
# gcc -o strncpy strncpy.c
# ./strncpy before strncpy() : abcdefgh after strncpy() : 123456gh
本文详细介绍了C语言中的字符串拷贝函数strcpy和strncpy的使用方法、区别以及注意事项,包括可能引发的缓冲溢出错误,并提供了实际运行示例帮助读者更好地理解这些函数的应用。
693

被折叠的 条评论
为什么被折叠?



