Penjelasan Singkat, Predesesor Postfix dan Prefix ++ Bahasa C

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 *.
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

Contoh:

// Program 2

#include<stdio.h>

 

int main()

{

 

char arr[] = "nasigorengpadang";

char *p = arr;

 

*p++;

 

printf(" %c", *p);

getchar();

 

return 0;

}

Output:
a

Komentar

  1. Apa yang dimaksud dengan precedence atau presedensi dalam bahasa C?

    BalasHapus
    Balasan
    1. Dalam 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".

      Untuk menguraikan ekspresi bahasa C yang tidak sepenuhnya berada dalam tanda kurung, maka programmer memberikan perintah kepada operator bahasa C sesuai dengan 'tabel prioritas'.

      Hapus
  2. 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'.

    Operator dengan prioritas lebih tinggi akan dieksekusi atau diselesaikan lebih dulu dibandingkan dengan operator dengan prioritas lebih rendah.

    BalasHapus
  3. 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.

    Diutamakan 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.

    BalasHapus
  4. 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

Posting Komentar

*Respon komentar 7 x 24 jam, mohon bersabar jika komentar tidak langsung dipublikasi atau mendapatkan balasan secara langsung. :D

*Jika terdapat typo, link bermasalah, dan lain sebagainya, pengunjung dapat melaporkan permasalahan tersebut melalui WA: +62-896-2514-6106




~ Ikatlah Ilmu dengan Memostingkannya ~

Referensi Tambahan:

Enkapsulasi pada Java

6 Contoh Program Method Overloading pada Java

2 Jenis Utama Kegiatan Penelitian Berdasarkan Waktunya, Crosssectional Salah Satunya

3 Jenis Utama Looping pada Java

Perbedaan stdio.h dan stdlib.h pada Bahasa C

3 Jenis Utama Teks Komentar pada Bahasa Pemrograman Java