【发布时间】:2020-04-21 20:55:14
【问题描述】:
我想将字符串s的两部分复制到两个字符串a和b:
#include <stdio.h>
#include <string.h>
int main()
{
char s[] = "0123456789ABCDEF";
char a[10];
char b[6];
strncpy( a, s, 10 );
a[10] = '\0';
printf("%s\n", a);
strncpy( b, s+10, 6 );
b[6] = '\0';
printf("%s %s\n", a, b);
return 0;
}
结果:
0123456789
ABCDEF
我已经预料到了
0123456789
0123456789 ABCDEF
a 怎么了?谁能告诉我怎么了?
【问题讨论】:
-
a[10] = '\0';和b[6] = '\0';无效。