词条 | 转义字符 |
释义 | 所有的ASCII码都可以用“\\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\\"来表示常见的那些不能显示的ASCII字符,如\\0,\\t,\等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。 C语言转义字符表所有的转义字符和所对应的意义: 转义字符 意义 ASCII码值(十进制) \\a 响铃(BEL) 007 \\b 退格(BS) 008 \\f 换页(FF) 012 \ 换行(LF) 010 \\r 回车(CR) 013 \\t 水平制表(HT) 009 \\v 垂直制表(VT) 011 \\\\ 反斜线 092
\\' 单引号字符 039 \\" 双引号字符 034 \\0 空字符(NULL) 000 \\ddd 任意字符 三位八进制 \\xhh 任意字符 二位十六进制 字符型常量字符型常量所表示的值是字符型变量所能包含的值。我们可以用ASCII表达式来表示一个字符型常量,或者用单引号内加反斜杠表示转义字符。 'A', '\\x2f', '\\013'; 其中:\\x表示后面的字符是十六进制数,\\0表示后面的字符是八进制数。 注意:在Turbo C 2.0中,字符型常量表示数的范围是-128到127,除非你把它声明为unsigned,这样就是0到255。 上面我们见到的\\x,\,\\a等等都是叫转义字符,它告诉编译器需要用特殊的方式进行处理。 各种编程语言转义符如HTML转义符、java 转义符、xml 转义符、 oracle 转义符、sql 转义符 、sqlserver 转义符、php 转义符、asp 转义符、vb转义符、 javascript 转义符等等,还有网址中的百分号。 例如,HTML的< >&"©对别是<,>,&,",©的转义字符 XML只有5个转义符: < >& " ' 为什么要用转义字符串转义字符串(Escape Sequence)也称字符实体(Character Entity)。在HTML中,定义转义字符串的原因有两个:第一个原因是像“<”和“>”这类符号已经用来表示HTML标签,因此就不能直接当作文本中的符号来使用。为了在HTML文档中使用这些符号,就需要定义它的转义字符串。当解释程序遇到这类字符串时就把它解释为真实的字符。在输入转义字符串时,要严格遵守字母大小写的规则。第二个原因是,有些字符在ASCII字符集中没有定义,因此需要使用转义字符串来表示。 其实所有编程语言,拥有转义字符的原因基本上是两点:一、使用转义字符来表示字符集中定义的字符,比如ASCll里面的控制字符及回车换行等字符,这些字符都没有现成的文字代号。所以只能用转义字符来表示 。二、某一些特定的字符在编辑语言中被定义为特殊用途的字符。这些字符由于被定义为特殊用途,它们失去了原有的意义。比如说Html中,<被HTML定义为标签的开始,所以当我们转入<时,HTML就会把它当作为开始,而不是当作一个<来看待。再如PHP 的双引号("),被PHP定义为字符串的外围标签,所以如果你在 一对双引号里面,还想要使用双引号,只能使用转义字符了。不然PHP就会报错了。 转义字符串的组成转义字符串(Escape Sequence),即字符实体(Character Entity)分成三部分:第一部分是一个&符号,英文叫ampersand;第二部分是实体(Entity)名字或者是#加上实体(Entity)编号;第三部分是一个分号。 比如,要显示小于号(<),就可以写 < 或者 < 。 用实体(Entity)名字的好处是比较好理解,一看lt,大概就猜出是less than的意思,但是其劣势在于并不是所有的浏览器都支持最新的Entity名字。而实体(Entity)编号,各种浏览器都能处理。 提示:实体名称(Entity)是区分大小写的。 备注:同一个符号,可以用“实体名称”和“实体编号”两种方式引用,“实体名称”的优势在于便于记忆,但不能保证所有的浏览器都能顺利识别它,而“实体编号”则没有这种担忧,但它实在不方便记忆。 如何显示空格?通常情况下,HTML会自动截去多余的空格。不管你加多少空格,都被看做一个空格。比如你在两个字之间加了10个空格,HTML会截去9个空格,只保留一个。为了在网页中增加空格,你可以使用 表示空格。 JavaScript转义符转义序列 字符 \\b 退格 \\f 走纸换页 \ 换行 \\r 回车 \\t 横向跳格 (Ctrl-I) \\' 单引号 \\" 双引号 \\\\ 反斜杠 特殊转义字符列表 url转义字符web 开发中通过问号(?)方式在浏览器地址栏中传值时。浏览器是通过“&”来区分问号后的参数个数的。 如果出现传值参数中带有“&”时,在接受页面就会出现错误,类似如下请求路径:/next.jsp?param1=hendhs89&furej & param2=sss 参数param1中含有转义字符“&” ,这样会导致被请求页的参数接收错误。 在传值前 通过 java.net.URLEncoder.encode(param1) 编码处理后,可将转义字符转为16进制; 1. + URL 中+号表示空格 %2B 2. 空格 URL中的空格可以用+号或者编码 %20 3. / 分隔目录和子目录 %2F 4. ? 分隔实际的 URL 和参数 %3F 5. % 指定特殊字符 %25 6. # 表示书签 %23 7. & URL中指定的参数间的分隔符 %26 8. = URL中指定参数的值 %3D 如何避免被识别为转义字符在编写网页时,如果直接在双引号之间输入路径,其中的“\\”及其之后的文本易被误认为转义字符。为避免这一点,只需在字符串的引号前加“@”符号(不包括外侧引号)。如:@ "c:\\ab\\cd\\ef.jpg" 。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。