# Unsafe Rust (Rust) > Unsafe blocks, raw pointers (*const T, *mut T), FFI, unsafe traits, Undefined Behavior (UB), safety invariants - 20 questions d'entretien - Senior - [Questions d'entretien: Rust](https://sharpskill.dev/fr/technologies/rust/questions-entretien.md) ## 1. Quel mot-clé permet d'activer les super-pouvoirs du mode unsafe en Rust ? **Réponse** Le mot-clé unsafe permet d'accéder à cinq capacités interdites en safe Rust : déréférencer des raw pointers, appeler des fonctions unsafe, accéder à des variables mutables statiques, implémenter des traits unsafe et accéder aux champs de unions. Ce bloc signale au compilateur que le développeur prend la responsabilité de garantir la memory safety. ## 2. Combien de capacités supplémentaires le code unsafe débloque-t-il par rapport au safe Rust ? **Réponse** Le mode unsafe débloque exactement cinq capacités : déréférencer des raw pointers, appeler des fonctions ou méthodes unsafe, accéder ou modifier des variables mutables statiques, implémenter des traits unsafe, et accéder aux champs de unions. Ces cinq opérations sont les seules différences entre safe et unsafe Rust. ## 3. Quelle est la syntaxe correcte pour créer un raw pointer immutable vers une variable en Rust ? **Réponse** La syntaxe pour créer un raw pointer immutable est let ptr = &x as *const T. Le type *const T représente un pointeur brut immutable. La création de raw pointers est safe, seul le déréférencement nécessite un bloc unsafe. On peut aussi utiliser la coercion implicite avec let ptr: *const T = &x. ## 17 questions supplémentaires disponibles - Quelle est la différence entre *const T et *mut T en Rust ? - Pourquoi la création de raw pointers est-elle autorisée en safe Rust alors que le déréférencement ne l'est pas ? S'inscrire gratuitement: https://sharpskill.dev/fr/login ## Autres sujets d'entretien Rust - [Les bases de Rust](https://sharpskill.dev/fr/technologies/rust/questions-entretien/rust-basics.md): 25 questions, Junior - [Ownership & Borrowing](https://sharpskill.dev/fr/technologies/rust/questions-entretien/ownership-borrowing.md): 22 questions, Junior - [Structs & Enums](https://sharpskill.dev/fr/technologies/rust/questions-entretien/structs-enums.md): 20 questions, Junior - [Gestion des erreurs](https://sharpskill.dev/fr/technologies/rust/questions-entretien/error-handling.md): 18 questions, Junior - [Collections](https://sharpskill.dev/fr/technologies/rust/questions-entretien/collections.md): 20 questions, Junior - [Modules & Packages](https://sharpskill.dev/fr/technologies/rust/questions-entretien/modules-packages.md): 18 questions, Junior - [Traits](https://sharpskill.dev/fr/technologies/rust/questions-entretien/traits.md): 22 questions, Confirmé - [Generics](https://sharpskill.dev/fr/technologies/rust/questions-entretien/generics.md): 20 questions, Confirmé - [Lifetimes](https://sharpskill.dev/fr/technologies/rust/questions-entretien/lifetimes.md): 20 questions, Confirmé - [Iterators & Closures](https://sharpskill.dev/fr/technologies/rust/questions-entretien/iterators-closures.md): 22 questions, Confirmé - [Smart Pointers](https://sharpskill.dev/fr/technologies/rust/questions-entretien/smart-pointers.md): 22 questions, Confirmé - [Concurrency Basics](https://sharpskill.dev/fr/technologies/rust/questions-entretien/concurrency-basics.md): 20 questions, Confirmé - [async/await](https://sharpskill.dev/fr/technologies/rust/questions-entretien/async-await.md): 22 questions, Confirmé - [Testing](https://sharpskill.dev/fr/technologies/rust/questions-entretien/testing.md): 18 questions, Confirmé - [Cargo & Ecosystem](https://sharpskill.dev/fr/technologies/rust/questions-entretien/cargo-ecosystem.md): 18 questions, Confirmé - [Pattern Matching](https://sharpskill.dev/fr/technologies/rust/questions-entretien/pattern-matching.md): 18 questions, Confirmé - [Macros](https://sharpskill.dev/fr/technologies/rust/questions-entretien/macros.md): 20 questions, Confirmé - [Serde & Serialization](https://sharpskill.dev/fr/technologies/rust/questions-entretien/serde-serialization.md): 20 questions, Confirmé - [Traits Avancés](https://sharpskill.dev/fr/technologies/rust/questions-entretien/advanced-traits.md): 22 questions, Senior - [Lifetimes Avancés](https://sharpskill.dev/fr/technologies/rust/questions-entretien/advanced-lifetimes.md): 20 questions, Senior - [Type System](https://sharpskill.dev/fr/technologies/rust/questions-entretien/type-system.md): 20 questions, Senior - [Tokio & Async I/O](https://sharpskill.dev/fr/technologies/rust/questions-entretien/tokio-async.md): 22 questions, Senior - [Optimisation de Performance](https://sharpskill.dev/fr/technologies/rust/questions-entretien/performance-optimization.md): 20 questions, Senior - [Memory Management](https://sharpskill.dev/fr/technologies/rust/questions-entretien/memory-management.md): 20 questions, Senior - [Web Frameworks](https://sharpskill.dev/fr/technologies/rust/questions-entretien/web-frameworks.md): 22 questions, Senior - [Database Integration](https://sharpskill.dev/fr/technologies/rust/questions-entretien/database-integration.md): 20 questions, Senior - [Design Patterns Rust](https://sharpskill.dev/fr/technologies/rust/questions-entretien/design-patterns.md): 20 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/fr/technologies/rust/questions-entretien/unsafe-rust