Unary operator dapat digunakan
untuk mengubah tanda dari nilai sebuah variable atau bisa juga digunakan sebagai
operator increment atau decrement yang merupakan operator yang melakukan
operasi matematika untuk menambahkan (increment) atau mengurangkan (decrement)
nilai sebuah variable dengan nilai tertentu. Pada operator ini ada 2 jenis
tanda yang digunakan yaitu ++ dan --. Tanda ++ digunakan untuk operator
increment sedangkan – digunakan untuk decrement.
Dibawah ini merupakan table dari
jenis penggunaan operator unary ini.
Pada table diatas, dapat dilihat
bahwa terdapat 2 cara penggunaan dilihat dari penempatan posisi tanda increment
(++) dan decrement (--) nya. Tanda tersebut ada yang diletakkan di awal variable
dan ada juga yang diletakkan di akhir variable. Peletakan tanda tersebut juga
berpengaruh terhadap hasil operasi dari operator ini. Jika tanda diletakkan di
depan variable, maka proses increment atau decrement variable tersebut akan
dilaksanakan terlebih dahulu sebelum proses selanjutnya dijalankan, atau bisa
dikatakan saat operator ini dijalankan operator akan langsung mengubah nilai variable
baik itu increment ataupun decrement. Sedangkan jika tanda diletakkan
dibelakang variable, maka proses increment atau decrement akan dilaksanakan
setelah proses pemanggilan operator tersebut selesai dilaksanakan.
Pada table diatas, sudah
dilengkapi dengan contoh penggunaannya, dan dibawah ini merupakan program
lengkap dalam penggunaan unary operator.
#include <stdio.h>
#include <stdlib.h>
int main(void){
int k, l=20;
printf("nilai awal l = %d, setelah -(%d) menjadi
%d\n\n",l, l, -(l));
k = 5;
printf("increment ++k\n");
printf("k = %d\n", k); //k
= 5
printf
("k = %d\n", ++k); //k = 6
printf("k = %d\n\n", k); //k = 6
k = 5;
printf("increment k++\n");
printf("k = %d\n", k); //k
= 5
printf
("k = %d\n", k++); //k = 5
printf("k = %d\n\n", k); //k = 6
k = 5;
printf("decrement --k\n");
printf("k = %d\n", k); //k
= 5
printf
("k = %d\n", --k); //k = 4
printf("k = %d\n\n", k); //k = 4
k = 5;
printf("decrement k--\n");
printf("k = %d\n", k); //k
= 5
printf
("k = %d\n", k--); //k = 5
printf("k = %d\n\n", k); //k = 4
system("pause");
return (0);
}
/*
++k >> memiliki arti, k=k+1 dan
proses ini akan dijalankan sebelum proses penampilan data ke layar
k++ >> memiliki arti, k=k+1 dan
proses ini akan dijalankan setelah proses penampilan data ke layar
--k >> memiliki arti, k=k-1 dan
proses ini akan dijalankan sebelum proses penampilan data ke layar
k-- >> memiliki arti, k=k-1 dan
proses ini akan dijalankan setelah proses penampilan data ke layar
*/