私は変数を持っています
ifstream inFile("stuff.txt");
stuff.txtファイルには、完全な文があります。
The quick brown fox jumps over the lazy dog
すべてのスペースを含むchar配列に入れるにはどうすればよいですか?
char text[250];
inFile >> text;
私を最初のスペースに連れて行ってくれます。
配列ifstream::getline()
に読み込むために使用するか、。に読み込むために使用します。空白を使用すると、区切り文字として機能するため、最初のスペースで停止します。char
std::getline()
std::string
inFile >> text
std::getline()
に読み込むために使用すると、読み込むstd::string
最大文字数を指定する必要がなくなります。これにより、バッファオーバーランの可能性が排除され、部分的に読み取られた行を処理する複雑さが増すのを回避できます(> 250
たとえば、この場合、行があった場合)。
IO操作の結果は常にすぐに確認してください。
std::ifstream inFile("stuff.txt");
if (inFile.is_open())
{
std::string line;
if (std::getline(inFile, line))
{
// Use 'line'.
}
}
while (!inFile.eof()) {
inFile >> text;
}