gpt4 book ai didi

c++ - : Expected constructor,析构函数错误,或者 '.' token之前的类型转换 - 理解fstream

转载 作者:行者123 更新时间:2023-11-27 23:17:01 25 4
gpt4 key购买 nike

我有一个简单的问题。我正在学习如何使用 fstream打印到数据文件和从数据文件打印,我只是在编译时遇到问题。我在这段代码的第 11 行和第 20 行遇到了同样的错误。另外,我不太确定我是否在代码末尾正确地从文件打印。

我得到的错误是:

'Error: Expected constructor, destructor, or type conversion before '.' token'

第 11 行和第 20 行是相同的错误,但带有字符 <<而不是 . .我也收到此错误:

"error: expected unqualified-id before ‘if’"

出于某种原因,尽管我很确定我的语法在这些方面是正确的。这些错误是否有某种关联?这是我的 main.cpp 文件:

#include <iostream>
#include <string>

#include <fstream>

using namespace std;

ofstream outFile;
string filename = "test.txt";

outFile.open(filename.c_str() );

if (!outFile) {
cerr << "File "
<< filename
<< " failed to open for output."
<< endl;
}

outFile << "Hello world!"
<< 2013
<< 3.14
<< "The end."
<< endl;

outFile.close();

ifstream inFile;

inFile.open("test.txt");

if (!inFile) {
cerr << "File "
<< filename
<< " failed to open for input."
<< endl;
}

int i=0;

while (inFile >> i) {

cout<< i
<< endl;
i++;
cout<< "Year is: "
<< i
<< endl;
i++;
cout<< "PI is about: "
<< i
<<endl;
i++;
cout<< i
<<endl;
}

最佳答案

据我所知,您缺少 main 或某种 function 否则这不是一个合适的程序,例如:

int main()
{
ofstream outFile;
string filename = "test.txt";

/// rest of your code
}

写出文件的代码看起来工作正常,下一个问题是当你在这里读回你的文件时:

while (inFile >> i) 

你有混合数据,它首先不是所有的int,像这样的东西可能会更好地开始:

std::string str ;

while (std::getline(inFile, str))
{
std::cout << str << std::endl ;
}

关于c++ - : Expected constructor,析构函数错误,或者 '.' token之前的类型转换 - 理解fstream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15754507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com