Мое намерение - прочитать все элементы 2-го столбца в buffer[]
из следующего файла .txt:
9992891234 09,920 15,71 11,909
9992345971 07,892 12,234 09,234
9992348971 64,567 70,456 50,987
9992348231 89,234 85,890 58,982
Я знаю способ сделать это, используя fscanf()
:
for (int i=0;i<4;i++)
{
fscanf(pFile, "%lld", &junk);
fscanf(pFile, "%f", &buffer[i]);
fscanf(pFile, "%f", &junk);
fscanf(pFile, "%f", &junk);
}
Однако, поскольку я занимаюсь параллельным программированием, которое требует от меня использования разных потоков Windows для чтения разных столбцов, поэтому мне нужно будет читать элементы во 2-м столбце напрямую, используя fseek()
.
Вопрос здесь в том, что я должен указать во втором аргументе в fseek()
в приведенном ниже коде, чтобы переместить указатель моего файла для чтения 2-го элемента 2-й строки?
fscanf(pFile, "%llf", &junk);//<------this is used to skip the 1st data
for (int i=0;i<4;i++)
{
fscanf(pFile, "%f", &buffer[i]);
fseek ( pFile , ??, SEEK_CUR );//<----how do I calculate this offset?
}