V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
pghxif
V2EX  ›  问与答

请教一个 C++字符串转义问题

  •  
  •   pghxif · 2018-09-12 14:52:59 +08:00 via Android · 1461 次点击
    这是一个创建于 2257 天前的主题,其中的信息可能已经有所发展或是发生改变。

    从文件读取一个含有转义 8 进制字符的字符串,比如 /027/034A/2651/000/276t,要把它转换为对应的二进制串,怎么操作呢?

    我试了一下直接赋值 string a=“/027/034A/2651/000/276t ”,这样 a 里是存的对应的二进制字符,但是我是从文件里读到的这个转义字符串,不知道怎么操作了。

    很小白的问题,用 google 不太会描述搜索关键词,所以来请教一下大家。

    4 条回复    2018-09-12 16:02:07 +08:00
    pghxif
        2
    pghxif  
    OP
       2018-09-12 15:38:17 +08:00 via Android
    @sbw 谢谢。
    我看了你发的链接是关于转义的介绍。
    我可能没有描述清楚问题,就是我现在有个 string 是类似”\027\034A\276t...“这样的长度有几千万的字符串,包括反斜杠都是字符串里的字符,请问我怎么把它转换为二进制串呢~谢谢
    GeruzoniAnsasu
        3
    GeruzoniAnsasu  
       2018-09-12 15:57:09 +08:00
    我猜意思是,把 escaped 表示的字符串 unescape 转义回二进制?比如"\\027"转回"\x17"?

    印象中没有通用的一步到位的标准库,不过手动实现一个也不难
    geelaw
        4
    geelaw  
       2018-09-12 16:02:07 +08:00 via iPhone
    用一个自动机完成。

    读者习题:完成这个程序。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2786 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:51 · PVG 20:51 · LAX 04:51 · JFK 07:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.