欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c语言中的 strcpy和strncpy字符串函数使用介绍

程序员文章站 2022-07-24 12:13:40
1.strcpy函数 函数原型:char *strcpy(char *dst,char const *src) 必须保证dst字符的空间足以保存src字符,否则多余的字符仍然被复制,覆盖原先存储在数组后面的内存空间的数值,strcpy无法判断这个问题因为他无法判断字符数组的长度。 输出结果是Adif ......

1.strcpy函数

函数原型:char *strcpy(char *dst,char const *src)            必须保证dst字符的空间足以保存src字符,否则多余的字符仍然被复制,覆盖原先存储在数组后面的内存空间的数值,strcpy无法判断这个问题因为他无法判断字符数组的长度。

 1 #include <stdio.h>
 2 #include<string.h>
 3 int main()
 4 {
 5 
 6     char message[5];
 7         int a=10;
 8     strcpy(message,"adiffent");
 9     printf("%s %d",message,a);
10     return 0;
11 }

输出结果是adiffent 10;因此使用这个函数前要确保目标参数足以容纳源字符串

2.strncpy函数:长度受限字符串函数

函数原型:char *strncpy(char *dst,char const *src,size_t len )       要确保函数复制后的字符串以nul字节结尾,即1<len<sizeof(*dst)

 1 #include <stdio.h>
 2 #include<string.h>
 3 int main()
 4 {
 5 
 6     char message[5];
 7         int a=10;
 8     strncpy(message,"adiffent",2);//长度参数的值应该限制在(1,5)
 9     printf("%s %d",message,a);   //不包含1和5
10     return 0;
11 }