Latest web development tutorials

C input & output

Ketika kita merujukpada input, yang berarti bahwa program ini ingin mengisi beberapa data.Masukan bisa dalam bentuk file dari baris perintah atau dilakukan. Bahasa C menyediakan satu set built-in fungsi untuk membaca masukan yang diberikan, dan diisi sesuai kebutuhan ke dalam program.

Ketika kita berbicara tentangoutput, itu berarti, file apapun pada printer atau menampilkan beberapa data di layar.Bahasa C menyediakan satu set fungsi built-in untuk output data pada layar komputer dan menyimpan data ke file teks atau file biner.

file standar

bahasa C meletakkan semua peralatan sebagai sebuah file. Jadi perangkat (seperti display a) harus diperlakukan dengan cara yang sama dengan file. Berikut tiga file secara otomatis terbuka ketika program ini dilaksanakan untuk mengakses keyboard dan layar.

标准文件文件指针设备
标准输入stdin键盘
标准输出stdout屏幕
标准错误stderr您的屏幕

File pointer adalah akses ke file, bagian ini akan menjelaskan bagaimana cara membaca hasil nilai output dari layar dan ke layar.

getchar () & putchar () fungsi

int getchar (void) Fungsi dari layar untuk membaca karakter berikutnya yang tersedia, dan mengembalikannya sebagai integer.fungsi dalam waktu yang sama ini hanya akan membaca karakter tunggal. Anda dapat menggunakan metode ini dalam satu lingkaran untuk membaca lebih karakter dari layar.

int putchar (int c) fungsi untuk karakter output ke layar, dan mengembalikan karakter yang sama.Fungsi ini dalam waktu akan output yang sama satu karakter. Anda dapat menggunakan metode ini dalam satu lingkaran untuk output pluralitas karakter di layar.

Perhatikan contoh berikut:

#include <stdio.h>
int main( )
{
   int c;

   printf( "Enter a value :");
   c = getchar( );

   printf( "\nYou entered: ");
   putchar( c );

   return 0;
}

Ketika kode di atas dikompilasi dan dieksekusi, menunggu Anda untuk memasukkan beberapa teks, ketika Anda memasukkan teks dan tekan tombol Enter, program ini akan berlanjut dan akan membaca satu karakter, ditunjukkan di bawah ini:

$./a.out
<b>Enter a value :</b> this is test
<b>You entered:</b> t

mendapat () & puts () function

char * mendapat (char * s) fungsi membaca garis dari stdinke dalam buffer yang ditunjukkan olehs,sampai terminator atau EOF.

int puts (const char * s) berfungsi untuk string s dan karakter newline trailing ditulis ke stdout.

#include <stdio.h>
int main( )
{
   char str[100];

   printf( "Enter a value :");
   gets( str );

   printf( "\nYou entered: ");
   puts( str );

   return 0;
}

Ketika kode di atas dikompilasi dan dieksekusi, menunggu Anda untuk memasukkan beberapa teks, ketika Anda memasukkan teks dan tekan tombol Enter, program ini akan terus dan membaca seluruh baris sampai akhir baris, yang terlihat di bawah ini:

$./a.out
<b>Enter a value :</b> this is test
<b>You entered:</b> This is test

scanf () dan printf () function

int scanf (const char * Format, ...) fungsi membaca masukan dari standar stdininputstream,menurutformatdan memberikan masukan ke browser.

int printf (const char * Format, ...) berfungsi untuk menulis output dengan standar stdoutoutputstream,dan menghasilkan output sesuai dengan format yang.

Format mungkin string konstan sederhana, tetapi Anda dapat menentukan% s,% d,% c , f% atau sejenisnya untuk membaca output string, integer, titik atau karakter mengambang.Ada banyak pilihan format lain yang tersedia, tergantung pada kebutuhan. Untuk keterangan lebih lanjut, Anda dapat melihat fungsi-fungsi ini referensi manual. Mari kita lihat contoh sederhana berikut untuk memperdalam pemahaman:

#include <stdio.h>
int main( )
{
   char str[100];
   int i;

   printf( "Enter a value :");
   scanf("%s %d", str, &i);

   printf( "\nYou entered: %s %d ", str, i);

   return 0;
}

Ketika kode di atas dikompilasi dan dieksekusi, menunggu Anda untuk memasukkan beberapa teks, ketika Anda memasukkan teks dan tekan tombol Enter, program akan terus dan membaca input, ditunjukkan di bawah ini:

$./a.out
<b>Enter a value :</b> seven 7
<b>You entered:</b> seven 7

Di sini, perlu dicatat bahwa, scanf () Format dan berharap untuk input yang Anda berikan sama seperti% d% s, yang berarti bahwa Anda harus memberikan masukan yang valid, seperti "string integer", jika Anda memberikan "string string "atau" integer integer ", itu akan dianggap masukan yang salah. Selain itu, ketika membaca string, selama pertemuan itu spasi, scanf () berhenti membaca, sehingga "ini test" untuk scanf () adalah tiga senar.