TGViewer
Rust Rust @rust_code · 8.91K subscribers
Post #1354 4.75K
«Никогда не используйте unsafe в Rust»

Есть решение проще: писать C прямо внутри Rust, ведь там unsafe включён по умолчанию.

Библиотека c_macro позволяет вставлять C-код через макрос c!, компилировать его вместе с проектом и вызывать как обычную функцию:

let sum = sum_array(array.as_ptr() as *mut c_int, array.len() as c_int);

В примере массив создаётся в Rust, указатель передаётся в C, а сумма возвращается обратно.

Без unsafe-блока в коде. Технически безопаснее от этого, конечно, не стало.
  • 💊 53
  • 😁 31
  • 🔥 8
  • ❤ 3
  • 🥰 2
  • 🙈 2
More from @rust_code
  1. Sep 20, 2026Zero cost
  2. Sep 19, 2026🦀 NVIDIA официально идёт в native GPU programming на Rust Теперь CUDA Rust позволяет писа…
  3. Sep 18, 2026yagni
  4. Sep 17, 2026🦀 Rust Pinning без магии: `Pin`, `Unpin` и `Future::poll` Одна из самых сложных тем в Rus…
  5. Sep 17, 2026Участвуй во всероссийском ИТ-чемпионате МТС True Tech Champ 2026 c призовой фондом 10 250…
  6. Sep 17, 2026photo post
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →