一些C接口返回指向缓冲区结尾的指针.然后我需要把范围转换成一个切片.但切片只能从指针和计数创建.我是怎么计算的.
写end - start
只会给出error: binary operation `-` cannot be applied to type `*mut i8`
和std::ptr::PtrExt
,只有offset
方法从偏移量计算结束,而不是逆运算.
一些C接口返回指向缓冲区结尾的指针.然后我需要把范围转换成一个切片.但切片只能从指针和计数创建.我是怎么计算的.
写end - start
只会给出error: binary operation `-` cannot be applied to type `*mut i8`
和std::ptr::PtrExt
,只有offset
方法从偏移量计算结束,而不是逆运算.
一个原始指针可以投射到usize
;然后你可以对这些进行减法运算.
end as usize - start as usize