Introduction to C Programming Language pada 1-c-programming-language | belajar system-programming | Peskom Guide
Home

Introduction to C Programming Language

Last Updated : 10 December 2024 / 8 min read

Bahasa C itu bisa menjadi bahasa yang simpel atau bahasa yang sangat teramat kompleks, tergantung dari sedalam apa kita ingin mempelajarinya. Bahkan orang yang sudah terbiasa dengan bahasa pemrograman lain bisa jadi tetap menghadapi kesulitan ketika menulis dengan bahasa C.

kita akan memulai perjalanan dengan menulis sebuah program paling simpel yang bisa kita tulis sebagai pemula dan sekaligus juga merupakan tradisi turun-temurun dalam dunia programming. Yaitu dengan menulis program “hello world”.

main.c
 #include <stdio.h>
 
int main() {
  printf("Hello, World!\n");
  return 0;
}  

Sekarang coba kita perhatikan program main.c diatas dan coba kita telaah satu per satu, baris per baris.

  • #include <stdio.h> berguna agar kita bisa menggunakan fungsi printf karena fungsi printf itu hanya ada di library stdio.h .
  • int main() adalah fungsi utama yang akan dijalankan oleh program.
  • printf("Hello, World!\n"); adalah statement yang akan mencetak teks “Hello, World!” ke layar.
  • return 0; adalah fungsi yang akan mengembalikan nilai 0 yang artinya program berhasil dijalankan.

Gimana? kalo orang yang belum pernah belajar programming sedikitpun pasti bakal langsung bingung. #include itu apa? fungsi itu apa? kenapa harus ada return 0 ? dan kenapa ada int main() ?

Kita akan dalami satu per satu seiring kita belajar lebih dalam. Tapi untuk sekarang kita cukup tahu bahwa program diatas itu adalah program yang berguna untuk mencetak teks “Hello, World!” ke layar terminal kita.

Compiling our code

Ada beberapa cara yang bisa kita lakukan untuk menjalankan program main.c kita diatas. Kebanyakan pemula pasti akan disarankan untuk menggunakan apa yang dinamakan dengan IDE (Integrated Development Environment).

IDE itu sebuah software yang bisa membantu kita dalam menulis program dengan lebih mudah dan efektif. Tapi kita tidak akan menggunakan IDE ini untuk menjalankan program kita. Melainkan kita akan menggunakan terminal yang terinstal pada komputer kita.

Silahkan buka terminal kalian dan coba jalankan perintah berikut:

 gcc
#atau
cc  

cc atau gcc merupakan apa yang dinamakan dengan compiler . compiler inilah yang akan membantu kita untuk menjalankan program kita. Dan meskipun kita menjalankan program kita dari IDE yang kita gunakan, sebenarnya IDE kita juga menggunakan compiler ini dibelakang layar.

Jika waktu kalian menjalankan perintah cc atau gcc dan ternyata muncul error seperti ini:

error
 cc: command not found  

Tapi coba kalian cari di google cara menginstall compiler kalian di sistem operasi kalian masing-masing.

Pada sistem operasi linux harusnya tinggal menjalankan sudo apt install build-essential dan untuk sistem operasi windows coba ikuti tutorial ini .

Dan untuk menjalankan program main.c kita, kita tinggal menjalankan perintah:

compile our code
 cc -o main main.c
#atau
gcc -o main main.c  

Perintah tersebut akan menghasilkan sebuag file main.out pada linux atau main.exe pada windows yang bisa kita jalankan dengan mengetikkan ./main di terminal kita.

The minimum form of a simple C program

Mari kita kembali ke program main.c kita. Dan ketika kita coba pecah program kita, maka kita akan mendapatkan bentuk seperti ini:

main.c
 #directives
 
type function() {
  statements;
 
  return statements;
}  

Struktur program paling sederhana dalam bahasa C terdiri dari beberapa bagian. directives , type , function , dan statements .

Directives

Directives selalu diawali dengan tanda pagar ( # ). Jadi kapanpun kita menemukan tanda pagar di awal baris, maka itu adalah directive .

Inti dari directives adalah sesuatu yang dijalankan sebelum program melakukan proses compilation . Mungkin kita ingin mendefinisikan sebuah library yang akan kita gunakan atau sebuah constant untuk program kita. Maka kita bisa menggunakan directives ini.

Dalam kasus ini, directive kita bertujuan untuk menggunakan standard library stdio.h yang akan akan memberikan kita fungsi printf yang kita gunakan untuk menulis output ke layar terminal kita.

Perlu diketahui kalau bahasa pemrograman C tidak memiliki fungsi input/output bawaan. Inilah alasan kenapa kita perlu menggunakan yang namanya standard library seperti stdio.h ini.

Perlu diingat juga kalau secara default, directive ini hanya sebaris panjangnya dan tidak menggunakan titik koma ( ; ) di akhir baris.

Functions

functions atau fungsi adalah sekumpulan statements atau kode yang dikumpulkan menjadi sebuah blok kode yang bisa kita gunakan berulang-ulang dibawah satu nama.

Dalam kasus kita, program kita hanya memiliki satu fungsi yaitu main . Fungsi main ini adalah fungsi yang akan dijalankan pertama kali ketika program kita dijalankan.

Dan fungsi ini bisa mengembalikan sesuatu. Dalam kasus kita, fungsi main mengembalikan nilai 0 . Tapi seandainya kita tidak ingin mengembalikan apapun juga bisa, palingan di beberapa compiler bakalan keluar warning aja karena fungsi kita diawali dengan kata int yang berarti integer atau bilangan bulat. Kata int inilah yang dimaksud dengan type .

Contoh dari fungsi yang tidak mengembalikan apapun adalah fungsi printf yang kita gunakan untuk menulis output ke layar terminal kita. type dari fungsin ini adalah void yang berarti dia tidak mengembalikan nilai apapun.

Statements

statements adalah perintah yang akan program kita jalankan. statements bisa dalam berupa return statements , seperti return 0 pada program kita. Bisa juga berbentuk function calls yaitu pemanggilan fungsi printf di program kita.

Setiap statement harus diakhiri dengan titik koma ( ; ) untuk menandakan bahwa statement tersebut sudah selesai dikarenakan statement bisa terdiri dari beberapa baris.

Comments

1 hal lagi yang perlu diketahui adalah tentang comments . comments adalah kode yang tidak akan dijalankan oleh program kita. comments ini biasanya digunakan untuk menambahkan catatan atau penjelasan pada program kita.

Dalam bahasa C, comments ini bisa kita tulis dengan dua cara.

  • Menggunakan garis miring dan bintang ( /***/ ).
  • Menggunakan hanya garis miring saja ( // ) di awal baris.
example of comments in our main program
 #include <stdio.h>
 
/* Program untuk mencetak Hello, World! ke layar terminal */
int main() {
  // Memanggil fungsi printf untuk mencetak Hello, World! ke layar terminal
  printf("Hello, World!\n");
  return 0; // Mengembalikan nilai 0
}  

Comment-comment tersebut tidak akan diproses oleh compiler.

Variables

Mayoritas program tidak mungkin se-simpel program kita diatas. Kebanyakan program biasanya akan melakukan serangkaian proses dari baris satu ke baris selanjutnya. Mungkin program kita ingin melakukan kalkulasi atau memanggil fungsi luar. Dimana ketika kita melakukan proses-proses tersebut, kita perlu tempat untuk menampung data-data yang kita miliki.

Nah tempat untuk menampung data-data tersebut itulah yang dinamakan dengan variables .

Variable declaration

Untuk menggunakan sebuah variable , pertama-tama kita perlu mendeklarasikan variable tersebut.

Aturan untuk mendeklarasikan sebuah variable adalah dengan menulis type dari variable tersebut, kemudian diikuti dengan nama variable tersebut. Berikut sebagai contoh:

variable declaration
 int age;
float wealth;  

Dalam kasus kode diatas, type -nya adalah int dan float . int (integer) adalah type yang digunakan untuk menampung bilangan bulat, sedangkan float (floating point) adalah type yang digunakan untuk menampung bilangan desimal.

Disusul dengan nama variable yang ingin kita deklarasikan, dalam kasus kode diatas adalah age dan wealth .

Kita juga bisa mendeklarasikan variable lebih dari satu sekaligus. Sebagai contoh:

more than 1 variable declaration
 int age, killCount;
float wealth;  

Pada contoh diatas, age dan killCount memiliki type yang sama yaitu int dan kita bisa deklarasikan sekaligus menggunakan koma ( , ) untuk memisahkan antara variable yang satu dengan yang lainnya.

Variable assignment

Tidak hanya mendeklarasikan banyak variable sekaligus, kita juga bisa mengisi variable tersebut dengan nilai yang kita inginkan sesuai dengan tipe dari variabel tersebut. Sebagai contoh:

variable assignment
 int age = 20, killCount = 100;
float wealth = 2150.5f;  

Coba perhatikan nilai dari variabel float kita, 2150.5f . Angka f di akhir nilai tersebut menandakan bahwa nilai tersebut bertipe float . Beberapa compiler akan memberikan warning kalau kita tidak menambahkan f dalam nilai variabel bertipe float .

Printing variable value

Menggunakan fungsi printf , kita bisa mencetak nilai dari sebuah variable ke layar terminal kita. Sebagai contoh:

printing variable value
 #include <stdio.h>
 
int main() {
    int age = 20, killCount = 100;
    float wealth = 2150.5f;
    float pricePerKill = wealth / killCount;
    printf("%.3f", pricePerKill);
 
    return 0;
}  

Perlu diketahui kalau %.3f adalah format specifier yang digunakan untuk menampilkan nilai float dengan presisi 3 angka dibelakang koma. Kenapa 3 angka dibelakang koma? karena jika tidak, maka angkanya tidak akan presisi dikarenakan keterbatasan compiler untuk memunculkan semua nilai desimal yang berada di belakang koma.

Sekarang semisal kita hanya menggunakan %f saja, maka outputnya akan menjadi seperti 21.504999 yang tentu saja tidak presisi.

Ada beberapa format specifier yang bisa kita gunakan untuk menampilkan nilai dari sebuah variable . Untuk menampilkan nilai integer kita bisa menggunakan %d , float kita bisa menggunakan %f , dan string kita bisa menggunakan %s . Sebagai contoh:

format specifier
 #include <stdio.h>
 
int main() {
    int age = 20, killCount = 100;
    float wealth = 2150.5f;
    float pricePerKill = wealth / killCount;
 
    printf("My age is %d years old with total of %.2f wealth", age, wealth);
 
    return 0;
}  

Disini kita menggunakan %d untuk menampilkan nilai integer dan %.2f untuk menampilkan nilai float dengan presisi 2 angka dibelakang koma.

Variable initial values

Ketika kita mendeklarasikan sebuah variable , tanpa memberikan nilai awal dari variable tersebut. Sebagai contoh:

variable initial values
 int age;  

Maka ketika kita ingin mengakses nilai dari variable tersebut, biasanya compiler secara default akan memberikan nilai terhadap variable tersebut. Dalam contoh diatasm, ketika kita lakukan printf("%d", age); , maka outputnya adalah 0 .

Namun ada juga variable yang tidak memiliki nilai awal jika kita tidak memberikan nilai awal dari variable tersebut. Sebagai contoh:

variable without initial values
 char *name;  

Ketika kita melakukan printf terhadap variabel tersebut, maka outputnya bisa bervariasi tergantung dari compiler yang kita gunakan. Kadang bisa mengeluarkan error atau angka yang entah datang dari mana.

Apakah konten ini membantu ? Jika ya, kami akan sangat menghargai jika Anda bisa memberikan bintang pada GitHub Repository kami dan ikuti sosial media dari komunitas Peskom di Facebook . Dukungan Anda membantu kami untuk terus berkembang! 🌟

Dan juga jika Anda menemukan kesalahan, typo, kekurangan, atau kesalahan pada artikel ini, kami sangat terbuka untuk masukan. Silakan laporkan temuan Anda melalui halaman Github Issues ini . Mari bersama-sama meningkatkan kualitas konten untuk komunitas Peskom! 🚀

Semoga semangat open source turut senantiasa menyertaimu.