Mari kita buat baris program seperti berikut :
#include <stdio.h> int main(void) { int a; for (a=0; a<=16;a++) { printf(a); printf("\n"); } return 0; }
Kita berharap bahwa keluarannya adalah :
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Tapi ternyata yang kita dapat adalah pesan kesalahan saat kompilasi :
pangkatdua.c:9:5: warning: passing argument 1 of ‘printf’ makes pointer from integer without a cast /usr/include/stdio.h:359:12: note: expected ‘const char * __restrict__’ but argument is of type ‘int’ pangkatdua.c:9:5: warning: format not a string literal and no format arguments
Perhatikan, bahwa tertulis pesan expected ‘const char * __restrict__’ but argument is of type ‘int’ –> Ini menunjukkan bahwa printf membutuhkan sebuah pengenal bagi tipe data yang akan kita munculkan.
Secara sederhana dan sebagai pengantar, berikut daftar pengenal (identifiers) tersebut :
| %d %i | Decimal signed integer. |
| %o | Octal integer. |
| %x %X | Hex integer. |
| %u | Unsigned integer. |
| %c | Character. |
| %s | String. |
| %f | double |
| %e %E | double. |
| %g %G | double. |
| %p | pointer. |
| %n | Number of characters written by this printf.No argument expected. |
| %% | %.No argument expected. |
Sekarang mari kita perbaiki program kita.
Karena a disana bernilai integer maka kita perbaiki baris printf nya menjadi :
printf ("%d", a);
Kompilasi lagi program kita, maka kita akan mendapatkan hasil urutan angka 1 s.d. 16
Selamat mencoba
Bersambung … (rezaervani@gmail.com)
Serial Sebelumnya
- Serial Tutorial C (1) : Compiling Program C dan C++
- Serial Tutorial C (2) : Opsi -Wall saat Kompilasi
- Serial Tutorial C (3) : Menggabungkan beberapa file saat kompilasi
- Serial Tutorial C (4) : Kompilasi File secara independen
- Serial Tutorial C (5) : Membuat File Objek dari File Sumber
- Serial Tutorial C (6) : Membuat Eksekutable File dari File Objek
- Serial Tutorial C (7) : Mengenal Struktur Program C

Leave a Reply