istream& getline( char* pch, int nCount, char delim = '\n'); istream& getline( unsigned char* puch, int nCount, char delim = '\n'); istream& getline( signed char* psch, int nCount, char delim = '\n'); pch,puch,psch : 文字配列へのポインタ nCount : 文字列の終わりを示す NULL 文字を含む最大格納文字数 delim : 区切り文字 (デフォルトは改行文字)
#include <stdio.h> #include <iostream> #include <fstream> using namespace std; int main() { char str[81]; /* getline と get */ ifstream in1("data"); // 1行目の入力(改行を除く) in1.get(str, 20); cout << str << endl; // 1行目の改行を入力 in1.getline(str, 20); cout << str << endl; // 2行目を入力 in1.getline(str, 20); cout << str << endl; in1.close(); /* fgets */ FILE *in2; in2 = fopen("data", "r"); // 1行目と2行目を入力 // 改行が文字列に入っているためendlは必要ない fgets(str, 20, in2); cout << str; fgets(str, 20, in2); cout << str; fclose(in2); return 0; }
First test data Second test data First test data Second test data
菅沼ホーム | 本文目次 | 演習問題解答例 | 付録目次 | 索引 |