在C语言中,将字符串拆分为不带分隔符的字符串数组

在C语言中,将字符串拆分为不带分隔符的字符串数组,c,arrays,string,split,C,Arrays,String,Split,需要将字符串拆分为字符串数组。问题是我没有分隔符。 例如:如果我有0970909547091000000089942200,我需要拆分成字符串数组,并知道第一个字符串有3位数字,第二个字符串有7位数字,第三个字符串有2位数字,诸如此类。我搜索,但任何地方都有带任何分隔符的答案。你只需要用艰难的方式去做 char first[4]; char second[8]; ... memcpy(first,str,3); first[3] = 0; memcpy(second, str + 3, 7);

需要将字符串拆分为字符串数组。问题是我没有分隔符。
例如:如果我有0970909547091000000089942200,我需要拆分成字符串数组,并知道第一个字符串有3位数字,第二个字符串有7位数字,第三个字符串有2位数字,诸如此类。我搜索,但任何地方都有带任何分隔符的答案。

你只需要用艰难的方式去做

char first[4];
char second[8];
...
memcpy(first,str,3);
first[3] = 0;
memcpy(second, str + 3, 7);
second[7] = 0;
...

为什么不创建一些新的固定大小数组并手动复制中的数据呢?这是db中的一行,我的文件中有很多行,需要将此字符串拆分为字符串数组(作为主机变量)并在db中插入所有行。我知道如何使用bd进行插入和其他处理,问题是如果文件中有1000个这样的字符串,如何分割字符串?对循环中的每个字符串执行此操作?每个字符串以相同的模式拆分。