Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menyatakan objek yang mengontrol pembacaan dari dan menulis ke aliran standar. Ini termasuk seringkali satu-satunya header yang perlu Anda lakukan input dan output dari program C++.
Sintaksis
#include <iostream>
Catatan
Pustaka <iostream> menggunakan #include <ios>pernyataan , #include <streambuf>, #include <istream>, dan #include <ostream> .
Keterangan
Objek jatuh ke dalam dua grup:
cin, ,coutcerr, danclogberorientasi pada byte, melakukan transfer byte-at-a-time konvensional.wcin, ,wcoutwcerr, danwclogberorientasi luas, menerjemahkan ke dan dari karakter luas yang dimanipulasi program secara internal.
Setelah melakukan operasi tertentu pada aliran, seperti input standar, Anda tidak dapat melakukan operasi orientasi yang berbeda pada aliran yang sama. Oleh karena itu, program tidak dapat beroperasi secara bergantian pada dan cin wcin, misalnya.
Semua objek yang dideklarasikan dalam header ini berbagi properti aneh — Anda dapat menganggap objek tersebut dibangun sebelum objek statis apa pun yang Anda tentukan, dalam unit terjemahan yang menyertakan <iostream>. Sama halnya, Anda dapat berasumsi bahwa objek ini tidak dihancurkan sebelum destruktor untuk objek statis seperti yang Anda tentukan. (Aliran output, bagaimanapun, dihapus selama penghentian program.) Oleh karena itu, Anda dapat dengan aman membaca dari atau menulis ke aliran standar sebelum startup program dan setelah penghentian program.
Namun, jaminan ini tidak universal. Konstruktor statis dapat memanggil fungsi di unit terjemahan lain. Fungsi yang disebut tidak dapat mengasumsikan bahwa objek yang dideklarasikan dalam header ini telah dibangun, mengingat urutan yang tidak pasti di mana unit terjemahan berpartisipasi dalam konstruksi statis. Untuk menggunakan objek ini dalam konteks seperti itu, Anda harus terlebih dahulu membuat objek kelas ios_base::Init.
Objek Aliran Global
| Nama | Deskripsi |
|---|---|
cerr |
cerr Menentukan aliran global. |
cin |
cin Menentukan aliran global. |
clog |
clog Menentukan aliran global. |
cout |
cout Menentukan aliran global. |
wcerr |
wcerr Menentukan aliran global. |
wcin |
wcin Menentukan aliran global. |
wclog |
wclog Menentukan aliran global. |
wcout |
wcout Menentukan aliran global. |
cerr
Objek cerr mengontrol output ke buffer aliran yang terkait dengan objek stderr, dideklarasikan dalam <cstdio>.
extern ostream cerr;
Tampilkan Nilai
Sebuah objekostream.
Keterangan
Objek mengontrol penyisipan yang tidak dibuffer ke output kesalahan standar sebagai aliran byte. Setelah objek dibangun, ekspresinya cerr.flags & unitbuf bukan nol, dan cerr.tie() == &cout. Untuk detail selengkapnya, lihat cerr.flags dan unitbuf.
Contoh
// iostream_cerr.cpp
// compile with: /EHsc
#include <iostream>
#include <fstream>
using namespace std;
void TestWide( )
{
int i = 0;
wcout << L"Enter a number: ";
wcin >> i;
wcerr << L"test for wcerr" << endl;
wclog << L"test for wclog" << endl;
}
int main( )
{
int i = 0;
cout << "Enter a number: ";
cin >> i;
cerr << "test for cerr" << endl;
clog << "test for clog" << endl;
TestWide( );
}
cin
cin Menentukan aliran global.
extern istream cin;
Tampilkan Nilai
Sebuah objekistream.
Keterangan
Objek mengontrol ekstraksi dari input standar sebagai aliran byte. Setelah objek dibangun, panggilan cin.tie akan mengembalikan &cout.
Contoh
Dalam contoh ini, cin mengatur bit gagal pada aliran ketika menemukan karakter non-numerik. Program menghapus bit gagal dan menghapus karakter yang tidak valid dari aliran untuk melanjutkan.
// iostream_cin.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
int main()
{
int x;
cout << "enter choice:";
cin >> x;
while (x < 1 || x > 4)
{
cout << "Invalid choice, try again:";
cin >> x;
// not a numeric character, probably
// clear the failure and pull off the non-numeric character
if (cin.fail())
{
cin.clear();
char c;
cin >> c;
}
}
}
2
clog
clog Menentukan aliran global.
extern ostream clog;
Tampilkan Nilai
Sebuah objekostream.
Keterangan
Objek mengontrol penyisipan buffer ke output kesalahan standar sebagai aliran byte.
Contoh
Lihat cerr contoh penggunaan clog.
cout
cout Menentukan aliran global.
extern ostream cout;
Tampilkan Nilai
Sebuah objekostream.
Keterangan
Objek mengontrol penyisipan ke output standar sebagai aliran byte.
Contoh
Lihat cerr contoh penggunaan cout.
wcerr
wcerr Menentukan aliran global.
extern wostream wcerr;
Tampilkan Nilai
Objek wostream.
Keterangan
Objek mengontrol penyisipan yang tidak dibuffer ke output kesalahan standar sebagai aliran lebar. Setelah objek dibangun, ekspresinya wcerr.flags & unitbuf bukan nol. Untuk detail selengkapnya, lihat wcerr.flags dan unitbuf.
Contoh
Lihat cerr contoh penggunaan wcerr.
wcin
wcin Menentukan aliran global.
extern wistream wcin;
Tampilkan Nilai
Objek wistream.
Keterangan
Objek mengontrol ekstraksi dari input standar sebagai aliran lebar. Setelah objek dibangun, panggilan wcin.tie akan mengembalikan &wcout.
Contoh
Lihat cerr contoh penggunaan wcin.
wclog
wclog Menentukan aliran global.
extern wostream wclog;
Tampilkan Nilai
Objek wostream.
Keterangan
Objek mengontrol penyisipan buffer ke output kesalahan standar sebagai aliran lebar.
Contoh
Lihat cerr contoh penggunaan wclog.
wcout
wcout Menentukan aliran global.
extern wostream wcout;
Tampilkan Nilai
Objek wostream.
Keterangan
Objek mengontrol penyisipan ke output standar sebagai aliran lebar.
Contoh
Lihat cerr contoh penggunaan wcout.
CString instans dalam wcout pernyataan harus dilemparkan ke const wchar_t*, seperti yang ditunjukkan dalam contoh berikut.
CString cs("meow");
wcout <<(const wchar_t*) cs <<endl;
Untuk informasi selengkapnya, lihat Operasi CString Dasar.
Lihat juga
Referensi File Header
Keamanan utas di Pustaka Standar C++
Pemrograman iostream
Konvensi iostreams