我在一个文件中有一组行,每行都有几个由 . 分隔的字符串","
。
如何根据分隔符拆分字符串并将结果存储在多维数组中,其中第一个索引是输入文件中的行号,第二个是列号?
在 string.h 头文件中使用strtok()
可以在 C 中使用。
strtok(char * array, ",");
char * array[size of columns][size of rows]
pch = strtok (str,",");
int i, j;
while (pch != NULL)
{
array[i++][j] = pch;
if( i == size of columns - 1){
i = 0; j++;
}
pch = strtok (NULL, ",");
if(j == size of rows -1){
break;
}
}
您可以做的(因为 c 字符串的工作方式)是检查字符,直到遇到“,”,然后将该字符替换为\0
(NULL 字符)并跟踪您开始检查的最后一个位置(无论是字符串或最后一个 NULL 字符之后的字符。这将为您提供每个分隔片段的可用 c 字符串。