鱼C论坛

 找回密码
 立即注册
查看: 2933|回复: 2

转义字符

[复制链接]
发表于 2022-10-4 15:31:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
int main()
{
char a,b,c,*d;
a='\';     
b=‘\xbc';
c="\0xab";
d="\0127";
printf("%c %c %c %c\n",a,b,c,*d);
d是转义字符还是字符串啊,转义字符八进制不是只可以\d,\dd,\ddd吗,不可以\dddd吧?
a,b,c又是为什么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-10-4 15:55:06 | 显示全部楼层
本帖最后由 jackz007 于 2022-10-4 16:02 编辑
        char a,b,c,*d;  // d 被定义成 char * d 是指针,和 char 无关 
        a ='\'       ;  // 无效的赋值,无法编译          
        b ='\xbc'    ;  // 有效的写法是 b = \xbc , 没有引号,xbc 是十六进制的 0xbc,对应的十进制数是 188  
        c ="\0xab"   ;  // 有效的写法是 c = \xab , 没有引号,xab 是十六进制的 0xab,对应的十进制数是 171
        d="\0127"    ;  // 有效的写法是 d = \127 , 没有引号,127 是八进制数 127(8),对应的十进制数是 87
        修改后的版本
#include<stdio.h>

int main()
{
        char a , b , c , d                      ;  
        a = '\\'                                ;
        b = \xbc                                ; // 十六进制在 '\x' 后面应该是 2 个数字
        c = \071                                ; // 八进制在 '\' 后面应该是 3 个数字
        d = \127                                ; // 八进制在 '\' 后面应该是 3 个数字
        printf("%c %c %c %c\n" , a , b , c , d) ;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-10-10 20:38:12 | 显示全部楼层
c是16进制数\0xdd
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 01:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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