转义字符的输出
看不懂。求解释。。\dddddd表示1到3位八进制数字\xhhhh表示1到2位十六进制数字还有这两个转义字符怎么使用??...
看不懂。求解释。。
\ddd ddd表示1到3位八进制数字
\xhh hh表示1到2位十六进制数字
还有这两个转义字符 怎么使用?? 展开
\ddd ddd表示1到3位八进制数字
\xhh hh表示1到2位十六进制数字
还有这两个转义字符 怎么使用?? 展开
8个回答
展开全部
字符常量中使用单引号和反斜杠以及字符常量中使用双引号和反斜杠时,都必须使用转义字符表示,即在这些字符前加上反斜杠。下图是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) 你的转义字符都是控制字符,它们的输出 按它们的功能 执行输出, (或叫 执行它的 功能)。
(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.
得到你的结果。
(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.
得到你的结果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
斜杠\在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
输出的时候\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个空格,但是不绝对,他的具体长度根上下文有关系的,主要目的是为了让输出能够排列整齐,所以制表输出的时候是会自动对齐的
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
\ddd是用8进制表示字符的方法
\xdd是用16进制表示字符的方法
\x6d是表示0x6d序号的字符,也就是十进制的109也就是'm'
\ddd表示方式使用八进制表示字符,自然不能出现8了
\xdd是用16进制表示字符的方法
\x6d是表示0x6d序号的字符,也就是十进制的109也就是'm'
\ddd表示方式使用八进制表示字符,自然不能出现8了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询