硬汉嵌入式论坛

 找回密码
 立即注册
查看: 961|回复: 3
收起左侧

[有问必答] 转义字符"\x30amn"编译报错

[复制链接]

12

主题

16

回帖

52

积分

初级会员

积分
52
发表于 2021-9-23 19:29:57 | 显示全部楼层 |阅读模式
本帖最后由 来俩不甜的 于 2021-9-23 19:33 编辑

下边的代码会报错。初步排查是因为'\x31'和'a'被合并成'\x31a'了,导致报 数值超出范围的错误。
有什么办法可以指定转义字符 \x  后边只跟着2个字符
  1. char  str[] = "\x31amn";
复制代码

回复

使用道具 举报

12

主题

16

回帖

52

积分

初级会员

积分
52
 楼主| 发表于 2021-9-23 19:35:03 | 显示全部楼层
目前想到的解决办法是 用八进制的转义字符 或是 定义成:str[] = "\x31""amn";  还有别的好办法吗
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2021-9-24 08:52:43 | 显示全部楼层
先定义单独的转义字符,然后用字符串连接函数把它们凑在一起。
回复

使用道具 举报

334

主题

2032

回帖

3039

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3039
发表于 2021-9-24 08:53:49 | 显示全部楼层
也可以试试"\x31""amn",这样子应该是可以的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-26 13:09 , Processed in 0.152746 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表