< 返回博客

郭亮亮 发表于 2019-11-29 22:30

use std::slice;
use std::str;
fn main() {
    let str = "Rust语言中文社区";
    let mut ptr = str.as_ptr();
    for o in str.chars() {
        let olen = o.len_utf8();
        println!("字符__{}__的地址是_{:?}_,占用_{}_个字节",o,ptr,olen);
        let slice = unsafe { slice::from_raw_parts(ptr, olen) };
        println!("该地址对应的unicode编码:{:?},对应的字符:_{:?}",slice,str::from_utf8(slice));
        println!("===============================================");
        ptr = ptr.wrapping_add(olen);
    }
}

研究了好久,一脸懵,,感觉也许大概就是这样的吧,

评论区

写评论

还没有评论

1 共 0 条评论, 1 页