Memahami Perintah Input / Output dengan Library [stdio.h]

Dalam pemrograman C++, untuk input / output kita bisa menggunakan perpustakaan iostream ataupun dengan stdio.h. Pada umumnya, banyak pengguna dalam pemrograman C maupun C++ menggunakan library atau perpustakaan iostream karena kemudahan dalam penggunaannya. Contohnya dalam kasus untuk output ke layar cukup dengan perintah :

cout<<"[string message]";
Dan untuk input kita cukup dengan perintah :
cin>>var;

Tetapi dalam kasus penggunaan stdio.h, kita tidak bisa seperti itu. Fungsinya pada intinya sama, yaitu untuk input-output. Namun, berbeda implementasinya dalam coding.
Untuk menampilkan sesuatu ke layar, dalam library stdio.h kita menggunakan perintah :
printf("[string message]");

Lalu apa bedanya? Teu aya! Kata orang Sunda 😁
Cuma penulisan saja yang berbeda, fungsinya sama. Tetapi lain dengan inputnya, ada fungsi tambahan yaitu dengan perintah scanf(). Format sintaksis dasar untuk perintah ini adalah :
scanf(const char* format, ...);
Masing-masing parameter itu memiliki fungsi masing-masing :
  • const char* format : penunjuk ke string C yang menunjukkan cara membaca input. Ini terdiri dari format yang dimulai dengan %.
  • ... : argumen tambahan lainnya yang menentukan data yang akan dicetak. Dilakukan secara berurutan sesuai dengan penentu format.
Menukil dari website coding C++, format String memiliki penjelasan :
The format parameter of scanf() can contain format specifiers that begin with %. The format string has the following parts:

  • Non whitespace characters except % each of which consumes one identical character from the input stream. It can cause the function to fail if the next character on the stream does not compare equal.
  • Whitespace character - All the consecutive whitespace characters are treated as a single whitespace character. Further, '\n', '\t' and ' ' are considered the same.
  • Conversion specification - It follows the following format:
    1. Initial % character that specifies the beginning.
    2. An optional * called assignment-suppression character. If this character is present, scanf() does not assign the result to any receiving argument.
    3. width - an optional positive integer number that specifies maximum field width. It specifies the maximum number of characters that scanf() is allowed to consume when doing the conversion specified by the current conversion specification.
    4. length - an optional length modifier specifying the size of the receiving argument.
    5. specifier - a conversion format specifier.
  • ... - other additional arguments for receiving data. They occur in a sequence according to the format specifier.
Nah, kelihatan ribet bukan? Tapi pada intinya tidak kok. Stw gaes 😎
Langsung saja ke contoh untuk penggunaan printf() dan scanf() berikut :

#include<stdio.h>
using namespace std;
int main() {
    int i; // deklarasi variabel dengan tipe data integer
    printf("Inputkan sebuah nilai : "); //output ke layar
    scanf("%d", &i); // perintah untuk input data
}
NB : Nama file yang dibuat ini io.cpp

Coba kita jalankan dengan perintah gcc ataupun dengan g++. 
[]> gcc io.cpp -o io [ Enter ]


Kemudian jalankan dengan perintah .\<output_file> [ Enter ]
Di bagian ini, kita bisa input sebuah value, baik integer maupun berupa char / string. Tetapi karena deklarasi kita int i maka value akan diproses ketika bertipe number / integer.


maka akan muncul hasilnya dan bisa input :


Nice try and Good luck 😎😁

Ahmad Istakim

Alumni dari jurusan Manajemen Informatika di Universitas Sains Al-Qur'an (UNSIQ ) Wonosobo. Tertarik dalam bidang pendidikan, teknologi komputasi dan disiplin ilmu keislaman ( Tafsir, Hadits, Arudl, Nahwu-Sharaf, Fiqh maupun Aqidah ) - https://s.id/blog-islamQ. Pernah juga mengenyam pendidikan di beberapa pesantren yang ada di Kab. Wonosobo dan Kab. Purworejo

Posting Komentar

Lebih baru Lebih lama