Awalan dan Akhiran Bahasa C Menggunakan Tanda ++
Pada bahasa C dan C++, precedence dari prefix ++ (atau prefix -) memiliki prioritas lebih tinggi daripada operator dereferensi (*), dan precedence dari postfix ++ (atau postfix -) adalah lebih besar daripada prefix ++ dan *.
Sebelum memahami lebih dalam materi tentang Awalan dan Akhiran Bahasa C Menggunakan Tanda ++, terlebih dahulu pelajari materi tentang: Operator Inkrementasi dan Ekspresi L-value Bahasa C dan Fungsinya [klik], Perintah Operand Untuk Operator Logika Bahasa C [klik], dan Operator Koma Sebagai Nilai I pada Bahasa C [klik].
Jika p adalah sebuah pointer maka *p++ sama dengan *(p++) dan ++*p adalah sama dengan ++(*p), kedua prefix ++ dan * adalah right associative.
Contoh: program 1 akan mencetak 'h' dan program 2 akan mencetak 'e'.
// Program 1
#include<stdio.h>
int main()
{
char arr[] = "nasigorengpadang";
char *p = arr;
++*p;
printf(" %c", *p);
getchar();
return 0;
}
Output:
o
Baca Juga:
Contoh:
// Program 2
#include<stdio.h>
int main()
{
char arr[] = "nasigorengpadang";
char *p = arr;
*p++;
printf(" %c", *p);
getchar();
return 0;
}
Output:
a
Referensi Tambahan:
- Penjelasan Singkat, Hasil Operasi Perbandingan pada Bahasa C dan C++ [klik]
- Penjumlahan Dua Angka Tanpa Menggunakan Operator Aritmatika Bahasa C [klik]
- 6 Contoh Program untuk Titik Sekuensial pada Bahasa C [klik]
- Penjelasan Singkat, Eksekusi Printf dengan Operator Increment pada Bahasa C [klik]
- Fakta tentang Sizeof pada Bahasa C [klik]
- 5 Fakta Antara Strlen vs Sizeof pada Bahasa C [klik]
- 4 Contoh Program Operator Stringsizing dan Tokenpasting pada Bahasa C [klik]
Artikel ini didedikasikan kepada: Rahmadandi Nuralia Ferdiansyah, Retina Kristiani, Riza Mustika Ayu Puspita, Rizqi Annisa, dan Sofiani Vitamara Agustina.
Apa yang dimaksud dengan precedence atau presedensi dalam bahasa C?
BalasHapusDalam bahasa C, secara khusus, "presedensi" dan "asosiativitas" adalah model yang disederhanakan untuk memahami tata letak ekspresi dalam bahasa pemrograman C. Keduanya digunakan untuk menjawab pertanyaan "bagaimana ekspresi diuraikan".
HapusUntuk menguraikan ekspresi bahasa C yang tidak sepenuhnya berada dalam tanda kurung, maka programmer memberikan perintah kepada operator bahasa C sesuai dengan 'tabel prioritas'.
Prioritas operator menjelaskan cara suatu operan akan diperasikan dalam bahasa pemrograman. Saat user memiliki beberapa operasi dalam sebuah ekspresi, maka setiap bagian akan dievaluasi dan diselesaikan dalam suatu urutan yang telah ditentukan sebelumnya sesuai dengan 'tabel prioritas operator'.
BalasHapusOperator dengan prioritas lebih tinggi akan dieksekusi atau diselesaikan lebih dulu dibandingkan dengan operator dengan prioritas lebih rendah.
Operator adalah simbol yang memberi tahu kompilator untuk melakukan fungsi matematika atau logika tertentu. Bahasa C memiliki banyak jenis operator yaitu operator aritmatika, logika, relatsional, dan lain sebagainya.
BalasHapusDiutamakan kerja suatu operator tertentu, berarti jika terdapat suatu persamaan yang terdiri dari 2 atau lebih jenis operator tertentu yang berbeda, maka operasi mana yang harus dilakukan terlebih dahulu adalah tergantung dari nilai prioritas dan asosiatifitas dari operator tersebut.
Precedense pada bahasa C adalah ketika sebuah operator tertentu yang dioperasikan dengan tipe operator lainnya yang berbeda yang berada dalam suatu ekspresi bahasa pemrograman tertentu, maka karena kondisi tersebut, kompilator perlu memutuskan operator mana yang akan ditangani terlebih dahulu. Jadi, atau aturan prioritas yang menentukan untuk suatu operator akan dioperasikan terlebih dahulu.
BalasHapus