位置:首页 > 软件操作教程 > 编程开发 > C语言 > 问题详情

C语言 strncpy()函数

提问人:刘团圆发布时间:2020-11-30
strncpyO函数实现字符串部分复制。

(1)调用方式

    strcpy (字符数组,字符串,n)

(2)函数功能:将“字符串”中的前n个字符复制到“字符数组”中。

(3)使用说明

    strncpy()中的具体规定与strcpy()函数一样,但要注意的问题是,实现n个字符复制后,并不自动增加字符串结束标志,所以需要编程者手动添加。例如:

    char strl[20]="Hello";

    char str2[10]=" Boy"; 

    strncpy(strl,str2,3); 

    puts(strl);

将str2中的前3个字符“Bo”赋值到str1中,但因为不增加字符串结束标志,所以“Bo”只覆盖str1中的前3个字符“Hel”,所以输出结果为:

    Bolo

如果不想出现这样的问题,可自己手动添加结束标志。在上例中,复制完后增加一条如下语句即可。

    strl[3] =0;

(4)实现strncpy()函数功能的代码为:

char strl[20]= "Hello";

char str2[10]=" Boy";

int n,i ;

printf("input n:\n");

scanf("%d",&n);

for(i=0;i<n;i++)        /* 逐个赋值 */

    strl[i]=str2[i];

strl[i]=0;              /* 增加字符串结束标志 */

puts(strl);

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部