C++でgetline関数を使う方法は?

C++ では、getline() は入力ストリームから1行のテキストを読み込むために使用する関数です。その基本的な使い方は次のとおりです。

#include <iostream>
#include <string>

int main() {
    std::string line;
    std::cout << "Enter a line of text: ";
    std::getline(std::cin, line);
    std::cout << "You entered: " << line << std::endl;
    return 0;
}

上記例では、getline() 関数は標準入力の値(std::cin)から一行分の文字列を読み取り、lineという文字列変数に保存します。そして、そのテキスト行が出力されます。

getline()関数の形式は次のとおりです。

std::istream& getline(std::istream& is, std::string& str, char delim);

3 つの引数を取ります。

  1. テキストの1行を読み取る入力ストリームオブジェクトです。
  2. str: 読み込んだ文字列を格納するための文字列型オブジェクト
  3. 区切り記号 (デリミタ): 行区切り文字を指定するために使用できるオプションのパラメータ。デフォルトでは「\n」(改行) です。

上記に加え、getline()関数を使用して、ファイルストリームからテキストの行を読み込むこともできます。

例によって

#include <iostream>
#include <fstream>
#include <string>

int main() {
    std::string line;
    std::ifstream file("example.txt");
    if (file.is_open()) {
        while (std::getline(file, line)) {
            std::cout << line << std::endl;
        }
        file.close();
    }
    return 0;
}

上記の例では、ifstreamファイルストリームと共にgetline()関数が使用されています。これによりexample.txtという名前のファイルからテキストを一行ずつ読み取り、一行ごとのテキストを標準出力ストリームに出力します。

bannerAds