[ HTML ] [ Java ] [ Bahasa C ]


Minggu, Mei 02, 2021

Kenapa Nama Variabel Tidak Diawali dengan Angka pada Bahasa C

Pada bahasa C, terlepas apakah itu sebuah keyword pada bahasa C, maka segalanya akan dianggap sebagai sebuah identifier. Identifier dapat berupa nama yang diberikan kepada variabel, konstanta, fungsi, dan data definisi user. Sebuah nama variabel dapat terdiri dari alfabet, angka, dan karakter. Tetapi nama variabel tidak dapat diawali dengan angka.

Ada beberapa alasan kenapa nama sebuah variabel tidak dapat dimulai dengan angka, yaitu terkait dengan:

  •   Lexical Analysis
  •   Syntax Analysis
  •   Semantic Analysis
  •   Intermediate Code Generation
  •   Code Optimization
  •   Code Generation
  •   Symbol Table

Backtracking sangat dihindari pada fase analisis lexical ketika melakukan kompilasi potongan kode program. Variabel seperti Apple;,  kompilator akan mendeteksinya sebagai sebuah identifier ketika ditemui huruf 'A' pada pase analisis lexical.  Namun, sebuah variabel seperti 123appple;, kompilator tidak akan dapat menentukan jika variabel tersebut apakah sebuah angka atau identifier sampai menemukan huruf 'a' dan membutuhkan bactracking pada fase analisis lexical untuk mengidentifikasi apakah karakter 123apple adalah sebuah variabel atau bukan. Namun, proses backtracking ternyata tidak didukung penggunaannya pada kompilator. Ketika melakukan parsing token, yang perlu dilihat adalah karakter pertamanya saja yang digunakan untuk menentukan apakah sekumpulan karakter tersebut termasuk dalam identifier atau lateral dan dapat dikirim pada fungsi yang tepat untuk diproses sehingga proses akan menjadi lebih optimal.

5 komentar:

  1. Ho jadi tujuan dari tidak boleh menggunakan angka pada awalan nama variabel adalah suapaya kompilator tidak bingung membedakan antara variabel dan bukan variabel,

    BalasHapus
  2. Apakah yang akan terjadi jika digunakan angka pada awalan nama variabel pada bahasa pemrograman C?

    BalasHapus
  3. Terima kasih infonya tentang alasan kenapa tidak boleh menggunakan angka pada awalan nama variabel, tapi yang dijelaskan cuma analisis lexicalnya saja, yang lain tidak, kedeman mungkin untuk bisa dilengkapi lagi untuk menambah pemahaman baru tentang materi tersebut.

    BalasHapus

Respon komentar 7 x 24 jam, so please be patient :D