我有一個問題,在循環訪問一個文件並用計數器提取幾個字母以知道已提取多少個字符後,我該如何重新定位指針以指向返回第一個提取。以下是我迄今爲止嘗試:它錯了一個在提取字符後返回到文件中的特定位置
int get_length(ifstream &inp,int &length){
int columns=0;
inp>>columns;
length++;
while(columns!=0)
{
inp>>columns;
length++;
}
if (!inp.good())
inp.clear();
inp.seekg(-length,std::ios::cur);
return length;
}
出於某種原因,它不會回到相同的長度,它變得,我試圖通過一個增加的長度,然後寫尋求功能我不不知道這裏出了什麼問題,我正在查詢我是否錯誤地使用了查找功能?
該代碼將額外時間增加「長度」。如果讀入'columns'的值是零,它應該**不**增加'length'。 –
考慮到跳過空格的數量會增加「長度」嗎? – Galik
閱讀關於'std :: basic_istream :: tellg()'。 –