Open
Description
rust/kernel/str.rs에는 BStr, CStr, CString이 있다.
어느 것을 사용해야할까?
rust코드에서 문자열을 생성하고 커널의 C코드로 넘겨줄 때 어떤 방식을 사용해야하나?
현재 사용하는 방식
- 커널 코어에 전달할 때는 fmt 객체 생성해서 .as_char_ptr()메소드로 포인터 넘김
- 드라이버에서 문자열을 저장할 때는 CString으로 보관
fmt!("rust_ldd03{}", i) => fmt::Arguments<'_>타입
CString::try_from_fmt(fmt!("rust_ldd03{}", i)) => CString객체 생성
다른 드라이버나 개발자들은 어떤 방식을 사용하고있나 조사해서 결정할것
Metadata
Metadata
Assignees
Labels
No labels