#![allow(dead_code, deprecated, unused_variables, unused_mut)] use std::ffi::CStr; use std::os::raw::c_char; unsafe extern "C" fn my_string() -> *const c_char { c"hello".as_ptr() } fn my_string_safe() -> String { let cstr = unsafe { CStr::from_ptr(my_string()) }; cstr.to_string_lossy().into_owned() } fn main() { println!("string: {}", my_string_safe()); }