转义字符的输出

看不懂。求解释。。
\ddd ddd表示1到3位八进制数字
\xhh hh表示1到2位十六进制数字

还有这两个转义字符 怎么使用??

   å­—符常量中使用单引号和反斜杠以及字符常量中使用双引号和反斜杠时,都必须使用转义字符表示,即在这些字符前加上反斜杠。下图是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 ä¸­éªŒè¯ï¼‰ã€‚

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-13

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

\\  输出 \ 号
\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

第2个回答  2014-01-14
按上面的输出方式,则:
(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.

得到你的结果。
第3个回答  推荐于2018-03-15
斜杠\在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个空格,但是不绝对,他的具体长度根上下文有关系的,主要目的是为了让输出能够排列整齐,所以制表输出的时候是会自动对齐的

本回答被提问者和网友采纳
第4个回答  2010-01-23
\ddd是用8进制表示字符的方法
\xdd是用16进制表示字符的方法

\x6d是表示0x6d序号的字符,也就是十进制的109也就是'm'
\ddd表示方式使用八进制表示字符,自然不能出现8了
相似回答