Belajar C Language - Sintaks Dasar & Struktur Program
Episode 3 of 24

Belajar C Language - Sintaks Dasar & Struktur Program

Episode ini membangun fondasi sintaks C: deklarasi variabel dan tipe data dasar, struktur program lengkap dengan fungsi main, statement, blok kode, komentar, serta aturan pemformatan. Kalian juga akan menyusun, menjalankan, dan melakukan debugging sederhana.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Pendahuluan

Setelah memahami arsitektur di balik C, sekarang saatnya menulis kode yang benar-benar terkompilasi. Episode 3 membangun sintaks dasar: bagaimana sebuah program C disusun, bagaimana variabel dideklarasikan, dan bagaimana aturan pemformatan yang baik diterapkan.

Sintaks C terbilang ringkas dibanding bahasa modern. Hanya ada sedikit kata kunci, dan hampir semua fitur dibangun dari kombinasi tipe, fungsi, dan pointer. Kesederhanaan ini justru menuntut ketelitian: satu titik koma yang hilang bisa mengubah seluruh makna program.

Di akhir episode ini, kalian akan bisa menyusun program C utuh, mengompilasinya dengan bendera peringatan, menjalankannya, dan membaca pesan error dengan percaya diri.

Struktur Program C

Anatomi Program Minimal

Program C terkecil yang valid terdiri dari satu fungsi main. Eksekusi selalu dimulai dari fungsi ini. Perhatikan struktur berikut:

Program C lengkap
cat > struktur.c <<'EOF'
#include <stdio.h>
 
int main(void) {
    printf("Struktur program C\n");
    return 0;
}
EOF
gcc -Wall -Wextra struktur.c -o struktur
./struktur

Baris pertama #include <stdio.h> memuat deklarasi fungsi input-output standar. Fungsi main mengembalikan int, dan nilai 0 menandakan program selesai dengan sukses. Nilai bukan nol menandakan ada error.

Fungsi main dan Argumennya

Fungsi main punya dua bentuk yang sah. Bentuk pertama int main(void) dipakai ketika program tidak membaca argumen. Bentuk kedua int main(int argc, char *argv[]) dipakai untuk membaca argumen baris perintah. Variabel argc berisi jumlah argumen, dan argv berisi array string yang menyimpan setiap argumen. Detail keduanya akan dibedah lebih dalam di episode 8.

Deklarasi Variabel dan Tipe Data Dasar

Tipe Data Fundamental

C menyediakan tipe data dasar yang sudah dikenal banyak bahasa:

  • int: bilangan bulat, biasanya 4 byte.
  • char: satu karakter atau satu byte.
  • float dan double: bilangan pecahan.
  • _Bool: nilai benar atau salah, dipakai via bool dari <stdbool.h>.
  • void: menandakan tidak ada nilai.

Setiap variabel harus dideklarasikan dengan tipe sebelum dipakai. Ukuran tipe bisa sedikit berbeda antar platform, sehingga C menyediakan tipe dari <stdint.h> seperti int32_t dan uint64_t yang ukurannya dijamin.

Konstanta dan Literal

Literal seperti 42, 3.14, dan 'A' adalah nilai mentah dalam kode. Kalian juga bisa mendefinisikan konstanta bernama dengan kata kunci const:

Variabel dan konstanta
cat > variabel.c <<'EOF'
#include <stdio.h>
 
int main(void) {
    const int umur = 25;
    double tinggi = 1.75;
    char inisial = 'A';
    printf("Umur %d, tinggi %.2f, inisial %c\n", umur, tinggi, inisial);
    return 0;
}
EOF
gcc -Wall -Wextra variabel.c -o variabel && ./variabel

Deklarasi const int umur = 25 membuat nilai umur tidak bisa diubah setelah inisialisasi. Memakai const untuk nilai yang memang tidak berubah adalah kebiasaan yang disukai reviewer.

Statement, Blok Kode, dan Komentar

Statement dan Titik Koma

Setiap statement diakhiri dengan titik koma. Contoh statement: deklarasi variabel, pemanggilan fungsi, dan penugasan. Sekelompok statement yang diapit kurung kurawal disebut blok kode. Blok mendefinisikan scope: variabel yang dideklarasikan di dalam blok hanya hidup di dalam blok itu.

Komentar untuk Dokumentasi

Komentar tidak dieksekusi oleh compiler dan berfungsi untuk menjelaskan maksud kode. C mendukung dua gaya: komentar satu baris dengan // dan komentar banyak baris dengan /* */. Tulis komentar yang menjelaskan mengapa sebuah keputusan diambil, bukan yang sekadar mengulang apa yang sudah terlihat dari kode.

Aturan Pemformatan

Pemformatan C tidak diatur oleh bahasa, tetapi oleh kesepakatan komunitas. Gunakan indentasi 4 spasi per level, buka kurung kurawal di akhir baris yang sama dengan deklarasi, dan beri spasi di sekitar operator. Konsistensi lebih penting daripada gaya mana pun yang dipilih. Alat otomatis seperti clang-format bisa menyamakan gaya seluruh tim:

Format kode otomatis
clang-format -i variabel.c

Perintah clang-format -i variabel.c menulis ulang file dengan gaya default LLVM. Banyak project memakai file .clang-format di repositori untuk memaksakan satu gaya bersama.

Menyusun, Menjalankan, dan Debugging Sederhana

Workflow Kompilasi yang Sehat

Jangan pernah mengompilasi tanpa bendera peringatan. Kebiasaan sehat:

Workflow kompilasi standar
gcc -Wall -Wextra -pedantic -g variabel.c -o variabel
./variabel

-pedantic memperingatkan pemakaian ekstensi di luar standar, dan -g menambahkan informasi debug. Kombinasi -Wall -Wextra -pedantic -g adalah standar yang dipakai project serius.

Menghadapi Error dan Warning

Compiler memberitahu lokasi error dalam format nama file, nomor baris, dan kolom. Misalnya variabel.c:7:5: error: expected ';'. Baca baris tersebut, cari penyebabnya, lalu perbaiki. Warning tidak menghentikan kompilasi, tetapi hampir selalu menandakan bug tersembunyi; perlakukan warning sebagai error dengan menambahkan -Werror.

Untuk debugging interaktif, jalankan program di bawah gdb dan telusuri baris per baris:

Sesi gdb singkat
gdb -q ./variabel

Di dalam gdb, ketik break main untuk berhenti di awal fungsi main, lalu next untuk menjalankan satu baris dan print umur untuk melihat nilai variabel. Sesi lengkap akan kita praktikkan di episode 11.

Penutup

Inti yang harus dibawa pulang:

  • Program C selalu dimulai dari fungsi main yang mengembalikan int.
  • Setiap statement diakhiri titik koma dan blok kode diapit kurung kurawal.
  • Tipe data dasar C meliputi int, char, float, double, dan bool.
  • Gunakan const untuk nilai yang tidak berubah.
  • Komentar menjelaskan mengapa, bukan mengulang apa.
  • Selalu kompilasi dengan -Wall -Wextra -pedantic -g dan perlakukan warning serius.

Di episode 4 selanjutnya kita akan membahas operator dan kontrol alur — operator aritmatika, bitwise, logika, dan ternary, statement kondisi if, if-else, dan switch, loop for, while, dan do-while, serta break, continue, return, dan pola kontrol loop.

Belajar C Language - Sintaks Dasar & Struktur Program | Belajar C Language