# Unsafe Rust (Rust) > Blok unsafe, raw pointer (*const T, *mut T), FFI, unsafe trait, Undefined Behavior (UB), invarian safety - 20 pertanyaan wawancara - Senior - [Pertanyaan Wawancara: Rust](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara.md) ## 1. Keyword mana yang mengaktifkan kekuatan super dari mode unsafe di Rust? **Jawaban** Keyword unsafe membuka lima kemampuan yang dilarang di safe Rust: melakukan dereference raw pointer, memanggil fungsi unsafe, mengakses variabel static mutable, mengimplementasikan unsafe trait, dan mengakses field union. Blok ini memberi sinyal kepada compiler bahwa developer mengambil tanggung jawab untuk menjamin memory safety. ## 2. Berapa banyak kemampuan tambahan yang dibuka oleh kode unsafe dibandingkan dengan safe Rust? **Jawaban** Mode unsafe membuka tepat lima kemampuan: melakukan dereference raw pointer, memanggil fungsi atau metode unsafe, mengakses atau memodifikasi variabel static yang mutable, mengimplementasikan trait unsafe, dan mengakses field union. Lima operasi ini adalah satu-satunya perbedaan antara safe dan unsafe Rust. ## 3. Apa sintaks yang benar untuk membuat raw pointer immutable ke sebuah variabel di Rust? **Jawaban** Sintaks untuk membuat raw pointer immutable adalah let ptr = &x as *const T. Tipe *const T merepresentasikan raw pointer immutable. Membuat raw pointer bersifat safe, hanya deref yang memerlukan blok unsafe. Coercion implisit juga dapat digunakan dengan let ptr: *const T = &x. ## 17 pertanyaan lagi tersedia - Apa perbedaan antara *const T dan *mut T di Rust? - Mengapa membuat raw pointer diizinkan di safe Rust sementara melakukan dereference tidak? Daftar gratis: https://sharpskill.dev/id/login ## Topik wawancara Rust lainnya - [Dasar-Dasar Rust](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/rust-basics.md): 25 pertanyaan, Junior - [Ownership & Borrowing](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/ownership-borrowing.md): 22 pertanyaan, Junior - [Structs & Enums](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/structs-enums.md): 20 pertanyaan, Junior - [Penanganan Error](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/error-handling.md): 18 pertanyaan, Junior - [Collections](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/collections.md): 20 pertanyaan, Junior - [Module & Package](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/modules-packages.md): 18 pertanyaan, Junior - [Traits](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/traits.md): 22 pertanyaan, Mid-Level - [Generics](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/generics.md): 20 pertanyaan, Mid-Level - [Lifetimes](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/lifetimes.md): 20 pertanyaan, Mid-Level - [Iterators & Closures](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/iterators-closures.md): 22 pertanyaan, Mid-Level - [Smart Pointers](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/smart-pointers.md): 22 pertanyaan, Mid-Level - [Concurrency Basics](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/concurrency-basics.md): 20 pertanyaan, Mid-Level - [async/await](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/async-await.md): 22 pertanyaan, Mid-Level - [Testing](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/testing.md): 18 pertanyaan, Mid-Level - [Cargo & Ecosystem](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/cargo-ecosystem.md): 18 pertanyaan, Mid-Level - [Pattern Matching](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/pattern-matching.md): 18 pertanyaan, Mid-Level - [Macro](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/macros.md): 20 pertanyaan, Mid-Level - [Serde & Serialisasi](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/serde-serialization.md): 20 pertanyaan, Mid-Level - [Trait Lanjutan](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/advanced-traits.md): 22 pertanyaan, Senior - [Lifetime Lanjutan](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/advanced-lifetimes.md): 20 pertanyaan, Senior - [Type System](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/type-system.md): 20 pertanyaan, Senior - [Tokio & Async I/O](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/tokio-async.md): 22 pertanyaan, Senior - [Optimasi Performa](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/performance-optimization.md): 20 pertanyaan, Senior - [Memory Management](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/memory-management.md): 20 pertanyaan, Senior - [Web Frameworks](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/web-frameworks.md): 22 pertanyaan, Senior - [Database Integration](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/database-integration.md): 20 pertanyaan, Senior - [Design Pattern Rust](https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/design-patterns.md): 20 pertanyaan, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/id/technologies/rust/pertanyaan-wawancara/unsafe-rust