转义字符的输出

看不懂。求解释。。\dddddd表示1到3位八进制数字\xhhhh表示1到2位十六进制数字还有这两个转义字符怎么使用??... 看不懂。求解释。。
\ddd ddd表示1到3位八进制数字
\xhh hh表示1到2位十六进制数字

还有这两个转义字符 怎么使用??
展开
 我来答
吉祥二进制
高粉答主

2015-05-22 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84583

向TA提问 私信TA
展开全部

   字符常量中使用单引号和反斜杠以及字符常量中使用双引号和反斜杠时,都必须使用转义字符表示,即在这些字符前加上反斜杠。下图是C语言中常用的转义字符。


   在C程序中使用转义字符\ddd或者\xhh可以方便灵活地表示任意字符。\ ddd为斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制ASCII码值。\ x后面跟两位十六进制数,该两位十六进制数为对应字符的十六进制ASCII码值。

使用转义字符时需要注意以下问题:
1) 转义字符中只能使用小写字母,每个转义字符只能看作一个字符。
2) \v 垂直制表和\f 换页符对屏幕没有任何影响,但会影响打印机执行响应操作。
3) 在C程序中,使用不可打印字符时,通常用转义字符表示


注:
1,\v垂直制表和\f换页符对屏幕没有任何影响,但会影响打印机执行响应操作。
2,\n其实应该叫回车换行。换行只是换一行,不改变光标的横坐标;回车只是回到行首,不改变光标的纵坐标。
3,\t 光标向前移动四格或八格,可以在编译器里设置
4,\' 在字符里(即单引号里)使用。在字符串里(即双引号里)不需要,只要用 ' 即可。
5,\? 其实不必要。只要用 ? 就可以了(在windows VC6 和tc2 中验证)。

百度网友16cb90c
2014-01-13
知道答主
回答量:19
采纳率:0%
帮助的人:18.4万
展开全部

先了解下常见的转义字符:

\\  输出 \ 号
\a  警报
\b  退格符
\f  换页符
\n  换行符
\r  回车符
\t  Tab 符(横向跳格)
\v  垂直跳格 Tab 符

\? 输出问号
\udd  使用数字指定的ASCII 字符,如\u2000

\ddd  使用八进制数指定的ASCII 字符,如\122

\xdd  使用十六进制数指定的ASCII 字符,如\xc8
\0  空值

再介绍下ASCII对应字符(十进制):


举个例子,我想输出大写字母A,查到它的ASCII码是65,那我可以表示成:

\u65 或 \101 或 \x41

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
金色潜鸟
2014-01-14 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5730万
展开全部
按上面的输出方式,则:
(1) 你的转义字符都是控制字符,它们的输出 按它们的功能 执行输出, (或叫 执行它的 功能)。
(2) 普通字符,按字符 印出。
\t -- 造表键,跳到本行固定位置,例如 第8,16,24,(也有的系统按6,12,18)
\r -- 回车键,回到本行最左的位置
\n -- 新行键,跳到下一行最左位置
\b -- 回退一格。如果是 \t\b 就等于删去 \t 的 功能。
=========================
\ddd 是写8进制的方法, 例如 \12 是8进制, 就是 新行键
\xnn 是写16 进制的方法,例如 \x0a 就是 新行键
用 printf("%o %x", '\n', '\n'); 可以得到 新行键 的8 进制值 和 16 进制值
=========================
第一句语句比较简单。注意 \r -- 回车键,回到本行最左的位置。前面输出的东西保留在屏幕上。回到本行最左的位置 后 再输出 f\tg, 覆盖掉 白ab白c白 等。

printf("h\ti\b\bj k\n");
输出h 跳到第8位 打印 i
第一个 \b 回退一格,移到 i 位置,抹去 i
第二个 \b 回退一格,移到 原 i 位置 的 左 面 1格。
打印 j 空 1 格 k.

得到你的结果。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
花花浪客
推荐于2018-03-15 · TA获得超过2069个赞
知道小有建树答主
回答量:792
采纳率:100%
帮助的人:715万
展开全部
斜杠\在C里面是转义字符,
输出的时候\t表示输出一个tab(制表符,通常4个空格位置)
\r是回车,就是回到这一行的开头,\n是换行,就是到下一行。而\b是退格键,相当于键盘上的backspace。
那么ab c\t de\rf\tg\n在输出的时候,前面先输出abc de之后,由于\r跳到本行开头了,所以后面输出的f tg就把前面的ab c d覆盖了(都是7个字符),所以总的输出看上去就是f tge了
第二行的输出的时候同理,注意下\b实际上就相当于我们输错了按一下backspace
追问
为什么f/tg是7个字符??
追答
这个实际上牵涉到制表符这个特殊的符号,制表符通常是4个空格,但是不绝对,他的具体长度根上下文有关系的,主要目的是为了让输出能够排列整齐,所以制表输出的时候是会自动对齐的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
scrooke
2010-01-23 · TA获得超过500个赞
知道小有建树答主
回答量:291
采纳率:0%
帮助的人:360万
展开全部
\ddd是用8进制表示字符的方法
\xdd是用16进制表示字符的方法

\x6d是表示0x6d序号的字符,也就是十进制的109也就是'm'
\ddd表示方式使用八进制表示字符,自然不能出现8了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式