Operator Unary dalam C++

Operator Unary Dalam C



Dalam C++, operator unary ialah operator yang berfungsi pada satu operan sahaja. Operator unary memainkan peranan penting dalam C++ dengan membolehkan manipulasi nilai yang dikaitkan dengan pembolehubah tunggal atau ungkapan. Pengendali serba boleh ini boleh digunakan dalam pelbagai konteks seperti menambah atau mengurangkan pembolehubah, menukar tanda nilai berangka atau melakukan penolakan logik. Artikel ini meneroka operator unary dalam C++ dengan merangkumi jenis dan aplikasinya serta menyediakan berbilang contoh untuk pemahaman yang lebih baik.

C++ menyokong beberapa operator unary, masing-masing mempunyai tujuan unik dalam memanipulasi pembolehubah. Mari kita mulakan dengan pengendali kenaikan dan pengurangan yang biasa digunakan dalam gelung dan pelbagai algoritma.

Contoh 1: Operator Penambahan (++) dan Penurunan (–).

Kenaikan (++) dan penyusutan (–) pengendali unari ialah alat asas dalam C++ untuk mengubah suai nilai pembolehubah dengan sama ada meningkatkan atau menurunkannya sebanyak 1, masing-masing. Pengendali kenaikan (++) menambah 1 pada nilai pembolehubah, manakala pengendali pengurangan (–) menolak 1. Operator ini boleh digunakan pada pembolehubah integer, titik terapung dan penunjuk, memberikan fleksibiliti dalam penggunaannya.







Mari kita terokai pengendali ini melalui contoh praktikal:



#include
menggunakan ruang nama std ;

int utama ( )
{

int kaunter = 0 ;

// Pengendali kenaikan
cout << 'Nilai awal: ' << kaunter << endl ;

kaunter ++ ;
cout << 'Nilai selepas kenaikan: ' << kaunter << endl ;

// Pengendali pengurangan
kaunter -- ;
cout << 'Nilai selepas pengurangan: ' << kaunter << endl ;

kembali 0 ;
}

Program C++ mudah ini termasuk perpustakaan aliran input/output yang diperlukan dengan '#include '. Dalam fungsi 'main()', kami membuat integer pembolehubah integer yang dipanggil 'counter' dan menetapkannya dengan nilai awal 0. Menggunakan pernyataan 'cout', kami mencetak nilai awal 'counter' ke konsol, memberikan garis asas untuk demonstrasi kami. Melangkah ke hadapan, operator kenaikan (counter++) digunakan untuk menaikkan nilai pembolehubah 'counter' sebanyak 1.



Selepas operasi ini, nilai kemas kini 'pembilang' dipaparkan menggunakan penyataan 'cout' lain. Selepas itu, kami menggunakan operator pengurangan (counter—) untuk mengurangkan nilai “counter” sebanyak 1. Hasilnya kemudiannya dipaparkan pada konsol. Akhirnya, program ini diakhiri dengan 'return 0;' pernyataan yang menunjukkan pelaksanaan yang berjaya.





Imej output menunjukkan nilai awal, nilai selepas kenaikan, dan nilai berkurangan.



Contoh 2: Operator Positif (+) dan Negatif (-).

Walaupun operator unary positif jarang digunakan, operator negatif adalah asas untuk menukar tanda pembolehubah.

#include
menggunakan ruang nama std ;

int utama ( ) {
int Nilai positif = 10 ;
int Nilai negatif = - Nilai positif ;

cout << 'Nilai positif: ' << Nilai positif << endl ;
cout << 'Nilai negatif: ' << Nilai negatif << endl ;

kembali 0 ;
}

Kami memulakan dua pembolehubah integer untuk kod contoh ini iaitu 'positiveValue' dan 'negativeValue'. 'Nilai positif' diberikan dengan nilai 10. Selepas itu, kami mengisytiharkan 'Nilai negatif' dan menetapkannya dengan penolakan 'Nilai positif' menggunakan operator tolak unary. Operator ini mengubah tanda nilai asal dengan berkesan. Kami kemudian menggunakan pernyataan 'cout' untuk memaparkan kedua-dua output positif dan negatif pada konsol. Akhirnya, program mengembalikan 0 yang menunjukkan kejayaan menyelesaikan fungsi utama.

Apabila dilaksanakan, program ini mengeluarkan nilai positif dan negatif.

Contoh 3: Operator BUKAN (!) Logik

Operator unary dalam C++, dilambangkan dengan “!” simbol, dikenali sebagai operator NOT logik. Ia direka untuk menyongsangkan nilai kebenaran ungkapan yang diberikan. Ia beroperasi pada satu operan yang biasanya merupakan ungkapan logik atau keadaan. Operasi NOT logik menghasilkan hasil 'benar' apabila operan 'palsu' dan menghasilkan hasil 'palsu' apabila operan itu 'benar'.

Berikut ialah contoh mudah yang menunjukkan penggunaan operator NOT logik:

#include
menggunakan ruang nama std ;

int utama ( ) {
bool betul = benar ;
bool isFalse = salah ;

bool resultNotTrue = ! betul ;
bool resultNotFalse = ! isFalse ;

cout << 'Nilai Asal: ' << betul << ', Selepas TIDAK: ' << resultNotTrue << endl ;
cout << 'Nilai Asal: ' << isFalse << ', Selepas TIDAK: ' << resultNotFalse << endl ;

kembali 0 ;
}

Dalam contoh ini, kami mengisytiharkan dua pembolehubah Boolean, 'isTrue' dan 'isFalse'. Kami kemudian menggunakan operator NOT logik untuk setiap pembolehubah, menyimpan keputusan dalam 'resultNotTrue' dan 'resultNotFalse', masing-masing. Program ini kemudiannya mencetak nilai asal dan keputusan operasi NOT logik untuk kedua-dua pembolehubah.

Apabila melaksanakan program ini, kami akan mendapati bahawa operator NOT logik membalikkan nilai kebenaran 'isTrue' (pada mulanya ditetapkan kepada benar), menjadikannya palsu. Begitu juga, ia menyongsangkan nilai kebenaran 'isFalse' (asalnya palsu), menghasilkan benar.

Output dengan jelas menggambarkan penyongsangan nilai kebenaran yang dicapai oleh operator NOT logik.

Contoh 4: Bitwise NOT (~) Operator

Operator NOT bitwise (~) dalam C++ ialah operator unary yang melakukan penolakan bitwise setiap bit operannya. Ia berfungsi dengan jenis data asas, khususnya yang integral, seperti integer. Hasilnya dicapai dengan menyongsangkan setiap bit individu dalam operan, menukar 0s kepada 1s dan 1s kepada 0s.

Untuk menggambarkan penggunaannya, pertimbangkan coretan kod berikut:

#include
menggunakan ruang nama std ;

int utama ( ) {
int nilai asal = 5 ;

int resultBitwiseNot = ~Nilai asal ;

cout << 'Nilai Asal: ' << nilai asal << ', Selepas Bitwise NOT: ' << resultBitwiseNot << endl ;

kembali 0 ;
}

Dalam contoh ini, kami mengisytiharkan pembolehubah integer 'Nilai asal' dengan nilai '5'. Seterusnya, kami menggunakan operator NOT bitwise (~) pada pembolehubah ini. Hasil pembolehubah ini disimpan dalam 'resultBitwiseNot'. Program kemudian mencetak nilai asal dan hasilnya selepas operasi NOT bitwise dengan menggunakan pernyataan 'cout'.

Apabila kami menjalankan program ini, kami akan melihat bahawa operator NOT bitwise menyongsangkan setiap bit perwakilan binari 'originalValue', menghasilkan nilai baharu.

Contoh 5: Alamat dan Operator Arahan

Alamat-pengendali, yang dilambangkan dengan simbol '&', berfungsi untuk tujuan mendapatkan semula lokasi memori pembolehubah. Ia mengembalikan penunjuk kepada pembolehubah yang membolehkan akses tidak langsung kepada nilainya. Operator pengalihan atau penyahrujukan (*) memperoleh nilai yang disimpan di lokasi memori yang ditentukan oleh penunjuk. Ia menyediakan cara untuk bekerja dengan data sebenar melalui penunjuk secara tidak langsung.

Mari kita fahami konsep dengan contoh:

#include
menggunakan ruang nama std ;

int utama ( ) {
int nilai = 99 ;

cout << 'Nilai Asal: ' << nilai << endl ;

int * ptr = & nilai ;
cout << 'Alamat Ingatan:' << ptr << endl ;

int retrievedValue = * ptr ;
cout << 'Nilai Diperoleh: ' << retrievedValue << endl ;

kembali 0 ;
}

Kod ini mencontohkan penggunaan alamat dan operator arahan. Pertama, pembolehubah integer bernama 'nilai' dimulakan dengan nilai 99. Nilai asal 'nilai' kemudiannya dikeluarkan ke konsol. Selepas itu, pembolehubah penunjuk 'ptr' diisytiharkan, dan alamat-pengendali (&) digunakan untuk menetapkan alamat memori 'nilai' kepada 'ptr'. Program ini kemudiannya mengeluarkan alamat memori ini, mempamerkan operasi asas pengendali 'alamat'.

Selepas itu, pembolehubah integer baharu iaitu 'retrievedValue' diisytiharkan, dan pengendali arah (*) digunakan untuk mendapatkan semula nilai yang disimpan pada alamat memori yang ditunjuk oleh 'ptr'. Nilai yang diperoleh kemudian dikeluarkan ke konsol.

Kesimpulan

Artikel ini menyediakan penerokaan komprehensif operator unary dalam C++. Kami bermula dengan mengkategorikan operator unary ke dalam pelbagai jenis termasuk aritmetik, logik, bitwise, dan yang berkaitan dengan alamat dan arahan. Situasi dunia sebenar telah dicontohkan untuk menunjukkan aplikasi berguna pengendali ini. Operator ini memainkan peranan penting dalam pengaturcaraan C++ yang membolehkan pembangun bekerja dengan penunjuk dengan cekap dan mengurus memori.