我在文件中有一组行,每行有几个由","
分隔的字符串。
如何根据分隔符拆分字符串并将结果存储在多维数组中,其中第一个索引是输入文件中的行号,第二个是列号?
答案 0 :(得分:3)
在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;
}
}
答案 1 :(得分:1)
你可以做什么(因为c-strings的工作方式)是检查字符,直到遇到“,”然后你用\0
(NULL字符)替换该字符并跟踪你的最后位置开始检查(字符串的开头或最后一个NULL字符后的字符。这将为每个分隔的片段提供可用的c字符串。