c语言中是否有一个函数可以复制字符数组的特定部分
我有这个角色c语言中是否有一个函数可以复制字符数组的特定部分,c,arrays,string,char,C,Arrays,String,Char,我有这个角色 char test[] = "Hello there\n" "World, my name\n" "Is bob\n"; 是否有一个函数可以用来将每一行存储到不同的字符数组中。所以\n会指示我停止,并将其存储到新数组中吗?最后我会有3组字符数组。基本上,我可以使用一个函数来查找\n,然后复制它之前的所有内容,但如果它看到\n char line1[] = "Hello there\n"; char line2[] = "Wo
char test[] = "Hello there\n"
"World, my name\n"
"Is bob\n";
是否有一个函数可以用来将每一行存储到不同的字符数组中。所以\n
会指示我停止,并将其存储到新数组中吗?最后我会有3组字符数组。基本上,我可以使用一个函数来查找\n
,然后复制它之前的所有内容,但如果它看到\n
char line1[] = "Hello there\n";
char line2[] = "World, my name\n";
char line3[] = "Is bob\n";
您可以使用strtok,如下例所示
#include<string.h>
#include<stdio.h>
int main()
{
char test[] = "Hello there\n"
"World, my name\n"
"Is bob\n";
char *p;
p = strtok(test, "\n");
while(p) {
printf("%s\n", p);
p = strtok(NULL, "\n");
}
return 0;
}
#包括
#包括
int main()
{
char test[]=“您好\n”
世界,我的名字\n
“是bob\n”;
char*p;
p=strtok(测试,“\n”);
while(p){
printf(“%s\n”,p);
p=strtok(空,“\n”);
}
返回0;
}
如何确保\n
也添加到每行中。