Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c语言中是否有一个函数可以复制字符数组的特定部分_C_Arrays_String_Char - Fatal编程技术网

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
也添加到每行中。