# Tinjauan Token C

Dalam pemrograman C, token adalah elemen individual terkecil yang membentuk suatu program. Berikut ini adalah tinjauan komprehensif mengenai token C:

## 1. Kata Kunci

Ini adalah kata-kata yang dipesan dengan makna khusus bagi kompiler:

```c

auto break case char const continue

default do double else enum extern

float for goto if int long

register return short signed sizeof static

struct switch typedef union unsigned void

volatile while _Bool _Complex _Imaginary

```

## 2. Identifikasi

Nama yang diberikan kepada variabel, fungsi, array, dll.:

- Aturan:

- Harus dimulai dengan huruf atau garis bawah

- Bisa berisi huruf, angka, garis bawah

- Peka terhadap huruf besar/kecil

- Tidak boleh menjadi kata kunci

## 3. Konstanta/Literali

Nilai tetap yang tidak berubah:

- Bilangan bulat: `123`, `-456`, `0x1A` (heksadesimal), `0123` (oktal)

- Titik mengambang: `3.14`, `-0.5e-10`

- Karakter: `'a'`, `'\n'`, `'\x41'`

- String: `"Hello"`, `"Line 1\nLine 2"`

## 4. Operator

Simbol yang melakukan operasi:

- Aritmatika: `+`, `-`, `*`, `/`, `%`, `++`, `--`

- Relasional: `==`, `!=`, `>`, `<`, `>=`, `<=`

- Logika: `&&`, `||`, `!`

- Bitwise: `&`, `|`, `^`, `~`, `<<`, `>>`

- Penugasan: `=`, `+=`, `-=`, dll.

- Berbagai macam: `sizeof()`, `&` (alamat), `*` (penunjuk), `?:` (ternary)

## 5. Simbol Khusus

- Kurung: `[]` (array), `{}` (blok), `()` (fungsi)

- Tanda baca: `,`, `;`, `:`, `#` (pra-pemroses)

## 6. Komentar

Bukan token secara teknis (dihapus selama pra-pemrosesan), tetapi penting:

```c

// Komentar baris tunggal

/* Komentar multi-baris

*/

```

## Contoh Token

```c

#include <stdio.h> // '#' dan '<stdio.h>' adalah token

int main() { // 'int', 'main', '(', ')', '{' adalah token

int x = 10; // 'int', 'x', '=', '10', ';' adalah token

printf("%d", x);// 'printf', '(', '"%d"', ',', 'x', ')', ';'

return 0; // 'return', '0', ';'

} // '}' adalah token

```

Memahami token-token ini merupakan dasar penting untuk menulis dan membaca kode C secara efektif.