Operator tidak langsung

Pengarang: Lewis Jackson
Tanggal Pembuatan: 8 Boleh 2021
Tanggal Pembaruan: 1 Juli 2024
Anonim
[REG] PENGUKURAN WAKTU KERJA TIDAK LANGSUNG
Video: [REG] PENGUKURAN WAKTU KERJA TIDAK LANGSUNG

Isi

Definisi - Apa yang dimaksud dengan operator Indirection?

Operator tipuan, dalam con C #, adalah operator yang digunakan untuk mendapatkan nilai dari variabel yang menjadi titik penunjuk. Sementara penunjuk yang menunjuk ke suatu variabel memberikan akses tidak langsung ke nilai variabel yang disimpan dalam alamat memorinya, operator tidak langsung menugaskan penunjuk dan mengembalikan nilai variabel di lokasi memori itu. Operator tipuan adalah operator unary yang diwakili oleh simbol (*).

Operator tipuan dapat digunakan dalam pointer ke pointer ke integer, array pointer satu dimensi ke integer, pointer ke char, dan pointer ke tipe yang tidak diketahui.

Operator tipuan juga dikenal sebagai operator dereference.

Pengantar Microsoft Azure dan Microsoft Cloud | Sepanjang panduan ini, Anda akan mempelajari tentang apa itu cloud computing dan bagaimana Microsoft Azure dapat membantu Anda untuk bermigrasi dan menjalankan bisnis Anda dari cloud.

Techopedia menjelaskan operator tidak langsung

Simbol (*) digunakan dalam mendeklarasikan tipe pointer dan dalam melakukan tipuan pointer, sedangkan operator ‘address-of’ () mengembalikan alamat variabel. Oleh karena itu, operator tipuan dan alamat operator saling terbalik.

C # memungkinkan penggunaan pointer hanya di wilayah yang tidak aman, yang menyiratkan bahwa keamanan kode dalam wilayah itu tidak diverifikasi oleh runtime bahasa umum (CLR). Di wilayah yang tidak aman, operator tipuan diizinkan untuk membaca dan menulis ke pointer. Pernyataan C # berikut menggambarkan penggunaan operator tidak langsung:
  • int a = 1, b; // baris 1
  • int * pInt = & a; // baris 2
  • b = * pInt; // baris 3
Pada baris pertama di atas, a dan b adalah variabel integer dan a diberi nilai 1. Pada baris 2, alamat a disimpan dalam pointer integer pInt (baris 2). Operator dereference digunakan pada baris 3 untuk menetapkan nilai pada alamat yang ditunjuk oleh pInt ke variabel integer b.

Operator tidak langsung harus digunakan untuk melakukan dereferensi penunjuk yang valid dengan alamat yang disejajarkan dengan jenis yang ditunjuknya, untuk menghindari perilaku yang tidak terdefinisi saat runtime. Seharusnya tidak diterapkan pada void pointer atau ekspresi yang bukan tipe pointer, untuk menghindari kesalahan kompilator. Namun, setelah casting void pointer ke tipe pointer kanan, operator tipuan dapat digunakan.

Ketika mendeklarasikan banyak pointer dalam satu pernyataan, operator tipuan harus ditulis hanya sekali dengan tipe yang mendasarinya dan tidak diulang untuk setiap nama pointer. Operator tipuan bersifat distributif dalam C #, tidak seperti C dan C ++. Ketika operator tipuan diterapkan ke pointer nol, itu menghasilkan perilaku yang ditentukan implementasi. Karena operator ini digunakan dalam con tidak aman, kata kunci tidak aman harus digunakan sebelum bersama dengan opsi / tidak aman selama kompilasi. Definisi ini ditulis dalam con C #