#![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 main() { unsafe { let slice = CStr::from_ptr(my_string()); println!( "string buffer size without nul terminator: {}", slice.to_bytes().len() ); } }