Open gurugio opened 1 year ago
rust/kernel/str.rs에는 BStr, CStr, CString이 있다. 어느 것을 사용해야할까? rust코드에서 문자열을 생성하고 커널의 C코드로 넘겨줄 때 어떤 방식을 사용해야하나? 현재 사용하는 방식
fmt!("rust_ldd03{}", i) => fmt::Arguments<'_>타입 CString::try_from_fmt(fmt!("rust_ldd03{}", i)) => CString객체 생성
다른 드라이버나 개발자들은 어떤 방식을 사용하고있나 조사해서 결정할것
https://discord.com/channels/1025034006506520667/1164181022246719518/1164213774740373534
Use c_str! macro https://github.com/gurugio/rust-for-linux/blob/rust-next-ldd-ch05/samples/rust/rust_ldd05.rs#L25
그냥 CString을 만들면 널바이트가 들어가지 않음 반드시 c_str!매크로를 사용해야 널바이트가 추가됨
rust/kernel/str.rs에는 BStr, CStr, CString이 있다. 어느 것을 사용해야할까? rust코드에서 문자열을 생성하고 커널의 C코드로 넘겨줄 때 어떤 방식을 사용해야하나? 현재 사용하는 방식
다른 드라이버나 개발자들은 어떤 방식을 사용하고있나 조사해서 결정할것