c语言中的 strcpy和strncpy字符串函数使用介绍
程序员文章站
2022-04-04 21:57:20
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 }
下一篇: iPhone6概念新设计,微型全息投影