C++ Input/Output Dasar: Contoh Cout, Cin, Cerr
โก Ringkasan Cerdas
C++ Operasi input dan output bergantung pada objek stream yang memindahkan data sebagai urutan byte antara program dan perangkat, dengan cin membaca input keyboard dan cout, cerr, dan clog menulis output ke layar.

Apa yang dimaksud dengan Aliran C++?
C++ memberi pengguna sejumlah perpustakaan yang dapat mereka gunakan untuk melakukan tugas input/output. Tugas-tugas ini dilakukan dalam bentuk urutan byte, yang populer disebut stream.
Aliran tersebut terbagi menjadi dua:
Jenis aliran
- Aliran Masukan: Ini adalah jenis aliran di mana byte mengalir dari perangkat seperti keyboard ke memori utama.
- Aliran Keluaran: Ini adalah jenis aliran di mana byte mengalir dalam arah yang berlawanan, yaitu dari memori utama lalu ke perangkat seperti layar tampilan.
Bagaimana cara kerja streaming?
C++ aliran bekerja sebagai berikut:
- Pertama, aliran diinisialisasi dengan tipe yang tepat.
- Selanjutnya, Anda harus menentukan di mana operasi I/O akan terjadi menggunakan pointer get/put.
- Setelah mencapai lokasi yang tepat dalam aliran, Anda dapat melakukan tugas masukan dan keluaran masing-masing menggunakan operator >> dan <<.
Tabel Fungsi
Berikut ini adalah fungsi yang disediakan dalam file header stream.h:
| Kelas | Fungsi |
|---|---|
| Filebuf | Ini mengatur buffer file untuk membaca/menulis. Ini memiliki fungsi close() dan open() di dalamnya |
| fstreambase | Ini adalah kelas dasar untuk kelas ifstream, fstream, dan ofstream. Pengoperasiannya biasa terjadi pada aliran file. |
| ifstream | Ini adalah kelas aliran file masukan untuk menyediakan operasi masukan. |
| arus | Ini adalah kelas aliran file keluaran untuk menyediakan operasi keluaran. |
| fstream | Ini adalah kelas aliran input/output. Kelas ini mendukung operasi input/output secara bersamaan. |
C++ File header untuk Input/Output
C++ menyediakan tiga perpustakaan yang dilengkapi dengan fungsi untuk melakukan tugas input/out dasar. Ini termasuk:
- Aliran Io: Ini adalah singkatan dari aliran input/output standar. File header ini dilengkapi dengan definisi untuk objek seperti cin/cout/cerr.
- Iomanip: Ini adalah singkatan dari manipulator input/output. Perpustakaan dilengkapi dengan fungsi yang dapat digunakan untuk manipulasi aliran. Ini berisi definisi untuk objek seperti setw, setprecision, dan lainnya.
- Aliran pertama: Ini adalah file header untuk menjelaskan aliran file. Ini menangani data yang dibaca dari file sebagai input atau yang ditulis ke file, output.
Kata kunci cin dan cout sangat populer C++. Mereka masing-masing digunakan untuk mengambil masukan dan mencetak keluaran. Untuk menggunakannya, Anda harus menyertakan file header iostream dalam program Anda. Alasannya adalah karena mereka didefinisikan dalam file header tersebut. Kegagalan untuk menyertakan file header iostream akan menghasilkan kesalahan. Hal ini disebabkan oleh kegagalan yang dilakukan oleh C++ compiler untuk memahami arti kata kunci.
Objek utama yang didefinisikan dalam file header iostream adalah cin, cout, cerr, dan clog. Mari kita bahas.
std::keluar
Objek cout adalah turunan dari kelas iostream. Ini digunakan untuk menghasilkan keluaran pada perangkat keluaran standar, yang biasanya berupa layar. Ini digunakan bersama dengan operator penyisipan aliran (<<).
Example
#include <iostream> using namespace std; int main() { char welcome[] = "Welcome to Guru99"; cout << welcome << endl; return 0; }
Keluaran:
Berikut ini tangkapan layar kodenya:
Code Penjelasan:
- Sertakan file header iostream tempat objek cout didefinisikan.
- Sertakan namespace std sehingga kita tidak perlu memanggilnya saat menggunakan kelasnya.
- Panggil fungsi main(). Kode program harus ditambahkan di dalam tubuhnya. Kurung kurawal pembuka { menandai awal badannya.
- Buat variabel karakter bernama welcome untuk menyimpan string "Welcome to" (Selamat datang di). Guru99.
- Cetak nilai string selamat datang di konsol. Ujungnya adalah a C++ kata kunci yang berarti garis akhir. Ini menggerakkan kursor untuk mulai mencetak teks pada baris berikutnya.
- Program harus mengembalikan nilai setelah eksekusi berhasil.
- Akhir dari isi fungsi main().
std::cin
Objek cin adalah sebuah instance dari kelas istream. Objek ini membaca input dari perangkat input, yaitu keyboard. Objek ini biasanya digunakan bersama dengan ex.tracoperator tion (>>). Contohtracobjek tion bertanggung jawab atas extracdata yang dimasukkan melalui keyboard dari objek cin.
Example
Contoh berikut menunjukkan cara menggunakan kata kunci cin di C++:
#include <iostream> using namespace std; int main() { int number; cout << "Enter a number:"; cin >> number; cout << "\nYou entered: " << number; return 0; }
Keluaran:
Berikut ini tangkapan layar kodenya:
Code Penjelasan:
- Sertakan file header iostream ke dalam program kami. Objek cin didefinisikan dalam file header ini.
- Sertakan namespace std untuk menggunakan kelasnya. Anda tidak perlu memanggil std saat menggunakan kelasnya.
- Panggil fungsi main(). Kode program harus ditambahkan di dalam tubuhnya.
- Awal dari isi program.
- Deklarasikan variabel bilangan bulat nomor bernama.
- Cetak pesan di layar yang meminta pengguna memasukkan nomor.
- Baca nilai yang dimasukkan oleh pengguna di konsol dari keyboard.
- Cetak nilai yang dibaca di atas pada konsol bersama teks lainnya.
- Program harus mengembalikan nilai jika berhasil dijalankan.
- Akhir dari badan fungsi utama.
std::cerr
Objek cerr membentuk aliran kesalahan standar untuk mengeluarkan kesalahan C++. Cerr adalah contoh kelas ostream. Objek cerr tidak memiliki buffer. Ini berarti objek ini digunakan saat pesan kesalahan akan segera ditampilkan.
Karena tidak di-buffer, ia tidak menyimpan pesan kesalahan untuk ditampilkan nanti. Ia digunakan bersama dengan operator penyisipan aliran (<<).
Example
#include <iostream> using namespace std; int main() { cerr << "An Error occurred!"; return 0; }
Keluaran:
Berikut ini tangkapan layar kodenya:
Code Penjelasan:
- Sertakan file header iostream tempat objek cerr telah ditentukan.
- Sertakan namespace std sehingga kita tidak perlu memanggilnya saat menggunakan kelasnya.
- Panggil fungsi main(). Logika program harus ditambahkan di dalam tubuhnya. Kurung kurawal pembuka menandai awal isi fungsi.
- Gunakan objek cerr untuk mencetak kesalahan di konsol.
- Program harus mengembalikan nilai setelah eksekusi berhasil.
- Akhir dari badan fungsi utama.
std::menyumbat
Objek clog adalah contoh dari kelas ostream. Objek ini digunakan untuk menampilkan kesalahan pada tampilan standar, monitor. Objek ini mirip dengan objek cerr, tetapi di-buffer. Karena di-buffer, objek ini menyimpan pesan kesalahan dalam buffer hingga buffer terisi/dibersihkan. Objek ini digunakan bersama dengan operator penyisipan aliran (<<).
Example
#include <iostream> using namespace std; int main() { clog << "An Error occurred!"; return 0; }
Keluaran:
Berikut ini tangkapan layar kodenya:
Code Penjelasan:
- Termasuk file header iostream tempat objek clog didefinisikan.
- Menyertakan namespace std sehingga kita dapat menggunakan kelasnya tanpa memanggilnya.
- Memanggil fungsi main(). Logika program harus ditambahkan di dalam tubuhnya. Tanda { menandai awal isi fungsi.
- Gunakan objek bakiak untuk mencetak kesalahan pada keluaran standar, monitor.
- Program harus mengembalikan nilai setelah berhasil diselesaikan.
- Akhir dari isi fungsi main().
Penanganan kesalahan dengan aliran IO
Objek aliran data yang sama juga melaporkan apakah suatu operasi berhasil atau tidak, yang diungkapkan oleh pemeriksaan status aliran data.
Untuk memeriksa apakah suatu aliran valid atau tidak, Anda dapat menggunakannya sebagai Boolean.
Berikut ini contohnya:
ifstream file( "myfile.txt" ); if ( ! file ) { cout << "File NOT opened!" << endl; }
Untuk mendapatkan detail lebih lanjut tentang status aliran, Anda dapat menggunakan fungsi berikut:
- bagus()- akan mengembalikan nilai true jika semuanya baik-baik saja.
- buruk()- akan mengembalikan nilai true jika terjadi kesalahan fatal.
- fail()- akan mengembalikan nilai true setelah operasi streaming gagal.
- eof()- akan mengembalikan nilai true jika mencapai akhir file.
Untuk mengetahui apakah operasi baca/tulis tertentu gagal, uji hasil bacanya.
Misalnya, untuk memeriksa apakah pengguna memasukkan bilangan bulat yang valid, lakukan ini:
int p; if ( cin >> p ) { cout << "Enter valid number" << endl; }




