C++のIO操作
1 cin cout cin.get() cin.get(ch)の戻り値
(1)cin,coutは言うまでもなくiostreamオブジェクトを返すため,このように使用できる.
cin.get()パラメータがない場合、戻り値は整数であるため、通常はこのように使用されます.
cin.get(ch)世代パラメータの場合もiostreamオブジェクトを返すのでcinを用いることができる.get(a).get(b).get(c);
2 cin.get(buffer, num, terminate) cin.getline(buffer,num,terminate)の違い
注意:terminateは一般的に「
両方とも、1行の文字を読み出すたびに、ternimateで指定された文字の終了に遭遇したり、num-1を超える文字の数で終了したりします.違いはcinです.getはterminateをバッファに残すので、次に読む最初の文字はterminate文字で、逆にcin.getline()は、バッファ内のterminate文字を破棄します.
入出力結果を見てください.
3つの比較的有用な関数:peek(),putback()およびignore()
cin.peek(ch);無視文字ch
cin.putback(ch);現在読み込まれている文字をchに置き換える
cin.ignore(num, ch); 現在の文字からnum文字を無視したり、ch文字に出会ったりして、ch文字をなくします.
入出力結果:
5ファイル入出力
fstreamには、ファイルのステータスを確認する関数がいくつかあります.
eof()はtrueを返しiostreamオブジェクトがEOFに遭遇した場合
本文はCSDNブログから来て、転載して出典を明記してください:http://blog.csdn.net/ustc_dylan/archive/2009/12/25/5077984.aspx
(1)cin,coutは言うまでもなくiostreamオブジェクトを返すため,このように使用できる.
cin >> var1 >> var2 >>var3;
cout << var1 << var2 <<var3<<endl;
cin.get()パラメータがない場合、戻り値は整数であるため、通常はこのように使用されます.
while((ch=cin.get()) != EOF)
{
cout << ch;
}
cin.get(ch)世代パラメータの場合もiostreamオブジェクトを返すのでcinを用いることができる.get(a).get(b).get(c);
2 cin.get(buffer, num, terminate) cin.getline(buffer,num,terminate)の違い
注意:terminateは一般的に「
両方とも、1行の文字を読み出すたびに、ternimateで指定された文字の終了に遭遇したり、num-1を超える文字の数で終了したりします.違いはcinです.getはterminateをバッファに残すので、次に読む最初の文字はterminate文字で、逆にcin.getline()は、バッファ内のterminate文字を破棄します.
#include <iostream>
using namespace std;
int main()
{
char stringOne[255];
char stringTwo[255];
cout << “Enter string one:”;
cin.get(stringOne,255);
cout << “String one: “ << stringOne << endl;
cout << “Enter string two: “;
cin.getline(stringTwo,255);
cout << “String two: “ << stringTwo << endl;
cout << “
Now try again...
”;
cout << “Enter string one: “;
cin.get(stringOne,255);
cout << “String one: “ << stringOne<< endl;
cin.ignore(255,’
’);
cout << “Enter string two: “;
cin.getline(stringTwo,255);
cout << “String Two: “ << stringTwo<< endl;
return 0;
}
入出力結果を見てください.
Enter string one:once upon a time
String one: once upon a time
Enter string two: String two:
Now try again...
Enter string one: once upon a time
String one: once upon a time
Enter string two: there was a
String Two: there was a
3つの比較的有用な関数:peek(),putback()およびignore()
cin.peek(ch);無視文字ch
cin.putback(ch);現在読み込まれている文字をchに置き換える
cin.ignore(num, ch); 現在の文字からnum文字を無視したり、ch文字に出会ったりして、ch文字をなくします.
#include <iostream>
using namespace std;
int main()
{
char ch;
cout << “enter a phrase: “;
while ( cin.get(ch) != 0 )
{
if (ch == '!')
cin.putback('$');
else
cout << ch;
while (cin.peek() == '#')
cin.ignore(1,'#');
}
return 0;
}
入出力結果:
enter a phrase: Now!is#the!time#for!fun#!
Now$isthe$timefor$fun$
5ファイル入出力
fstreamには、ファイルのステータスを確認する関数がいくつかあります.
eof()はtrueを返しiostreamオブジェクトがEOFに遭遇した場合
本文はCSDNブログから来て、転載して出典を明記してください:http://blog.csdn.net/ustc_dylan/archive/2009/12/25/5077984.aspx