C\C++的转义字符

所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。
转义字符 意义 ASCII码值(十进制)
\a 响铃(BEL) 007
\b 退格(BS) 008
\f 换页(FF) 012
\n 换行(LF) 010
\r 回车(CR) 013
\t 水平制表(HT) 009
\v 垂直制表(VT) 011
\\ 反斜杠 092
\? 问号字符 063
\' 单引号字符 039
\" 双引号字符 034
\0 空字符(NULL) 000
\ddd 任意字符 三位八进制
\xhh 任意字符 二位十六进制

\a:蜂鸣,响铃

\b:回退:向后退一格

\f:换页

\n:换行,光标到下行行首

\r:回车,光标到本行行首

\t:水平制表

\v:垂直制表

\\:反斜杠

\':单引号

\":双引号

\?:问号

\ddd:三位八进制

\xhh:二位十六进制

\0:空字符(NULL),什么都不做

注:

1,\v垂直制表和\f换页符对屏幕没有任何影响,但会影响打印机执行响应操作。

2,\n其实应该叫回车换行。换行只是换一行,不改变光标的横坐标;回车只是回到行首,不改变光标的纵坐标。

3,\t 光标向前移动四格或八格,可以在编译器里设置

4,\' 在字符里(即单引号里)使用。在字符串里(即双引号里)不需要,只要用 ' 即可。

5,\? 其实不必要。只要用 ? 就可以了(在windows VC6 和tc2 中验证)。

格式控制符参考:

格式输出字符:printf

使用:向终端输出若干个类型任意的数据。

形式:printf (格式控制符,输出列表)

说明:

格式控制符:% 格式说明引导符。

- 指定左对齐输出。

0 指定空位填零。

m.n 指定输出域宽度及精度。

l.h 输出长度的修正。

格式字符 指定输出的数据类型。

说明:

格式字符:指定输出项的数据类型和输出格式。

d 有符号十进制整数。

o 无符号八进制数。

x 无符号十六进制数。(小写的x格式中用小写字母a,b,c,d,e,f来表示10到15之间的数,大写的X则用大写的ABCDEF来表示10到15之间的数)

u 不带符号的十进制整数。

基本整型:两个字节,十六个bit(位)

11 11 11 11 11 11 11 11 等于 65535.

11 11 11 11 11 11 11 10 等于 -2.

负数的第一位(符号位)为1。负数的补码怎么得到:原码取反加一。2的二进制数为:00 00 00 00 00 00 00 10,取反就等于11 11 11 11 11 11 11 01,然后加1,二进制数逢二进一,所以就得出-2 的二进制代码。

有符号的整型数可以用 %d 输出。

无符号的整型数可以用 %u 输出。

电脑里存的数字都是二进制数,最高位是符号位还是数据位,可以由输出格式符来控制。

二进制数转换八进制数:三个 1 对应一个 7 。

二进制数錾十六进制数:四位二进制对应一位十六进制,四个1 对应一个 f。

说明:

格式字符:c 输出一个字符。

s 输出一个字符串。

e 以指数形式输出实型数。

f 以小数形式输出实型数。

g 自动决定输出格式为e和f中较短的一种,不打印无效的零。

% 输出%。

注意:对于单精度数,使用 %f 格式符输出时,仅前7位是有效数字,小数6位。

对于双精度数,使用 %lf 格式符输出时,前16位是有效数字,小数6位。

长度修正符

l:对整型指定长整型long

例:%ld , %lx , %lo , %lu

对实型指定双精度double

例:%lf

h:只用于整型的格式字符修正为short

例:%hd , %hx , %ho , %hu

对64位整数的输入输出,在POJ上的C++环境下(即VC++),64位整数是:

__int64

输入输出格式为”%I64d”.

在G++环境下, 64位整数是

long long

输入输出格式为”%lld”.

域宽及精度的描述

M:域宽,即对应的输出项在输出设备上所占字符数

若:实际数据宽度>M,按实际数据宽度输出。

实际数据宽度<M,左边补空。

N:精度,说明输出的实型数的小数位数。

几点说明:

编译程序只是检查printf 函数的调用形式,不分析格式控制字符串,如果格式字符与输出项的类型不匹配,不进行类型转换。(输出的数为随机)

格式字符要用小写字母。

格式控制字符串中可以包含转义字符。

格式控制字符串中的普通字符则原样输出。

输出项的参数除了常数、变量外还可以是表达式、函数调用。

%g,%f和%e这三个格式用于打印浮点值。

                  %g格式用于打印那些不需要按列对齐的浮点数特别有用。其作用有二:

                  一,去掉该数尾多余的零(没有达到六位的数)

                  二,保留六位有效数字(多余六位的)

                  %e格式用于打印浮点数时,一律显示地使用指数形式:例如:输出圆周率时是:3.141593e+00

                 两者的区别:

                 %g格式打印出的数是总共6位有效数字

                 %e格式打印出小数点后的6位有效数字

                 %f禁止使用指数形式来表示浮点数。因此圆周率输出为:3.141593

                (但注意它的精度要求:也是小数点后6位有效数字)

                (8)%%格式用于打印一个%字符。

               (9)%E和%G只是在输出时用大写字母(E)代替了小写字母(e)

输出正负号的技巧,例如:

                printf("%+d %+d %+d\n",-5,0,5);

                只要在中间加个“+”号就行。作用是输出符号位(即,数的正负号)

                如果不希望正数的前面出现‘+’号,可用下面的方法

                只要在中间加个“ ”号(即:空格)就行。例如:

                作用:如果一个数是非负数,就在它的前面插入一个空格。

                int i;

                for(i=-3;i<=3;i++)

                        printf("% d\n",i); //注意%和d之间有一个空格

sscanf()的使用技巧:

                分解字符串,很多功能都需要正则表达式的知识,所以就介绍一下最简单的几种用sscanf来分解字符串 的用法。

                1.

                char str[100],str1[100],str2[100];

                gets(str);

                sscanf(str,”%s%s”,str1,str2);

                将读入的一整行字符串按空格,制表符或回车符分割成两个字符串。

                2

                取指定长度的字符串。如在下例中,取最大长度为4字节的字符串。

         sscanf("123456 ", "%4s", str);

C\C++的转义字符的更多相关文章

  1. XML中的转义字符

    HTML中<, >,&等有特别含义,(前两个字符用于链接签,&用于转义),不能直接使用.使用这三个字符时,应使用他们的转义序列,如下所示: & 或 & &a ...

  2. 关于Android中res目录strings.xml文件中的转义字符之笔录

    res目录strings.xml文件中的转义字符:         ------------------>     代表着一个汉字的位置:                        ---- ...

  3. 用CSS正确显示人民币符号的HTML转义字符

    做电子商务的难免要跟钱打交道,特别是跟人民币接触更多,但人民币符号长什么样呢,是¥还是¥?糊涂了吧^~^,要知道答案很简单,找出一张新的一百元大钞,在背面看看那个防伪的银线,上面就有. 我们做网页时要 ...

  4. C#转义字符(Z)

    所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示.而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为 ...

  5. xml转义字符

    解析XML文件时,如果有多个转义学符可以用 <![CDATA[含有转义字符的内容]]

  6. Python_转义字符

    转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制表符 \ ...

  7. HTML特殊转义字符列表

    HTML特殊转义字符列表 最常用的字符实体 显示  说明  实体名称  实体编号   空格       <       小于   <  < >  大于  > > & ...

  8. javascript字符转直接量和转义字符

    直接量: 你可以用单引号或者双引号来表示字符串的直接量.但是js的字符串必须是Unicode 字符序列. 转义字符: 主要用在字符串中,包涵控制字符,以及当前操作系统余元所不允许直接输入的字符. 转义 ...

  9. MySQL语句中的转义字符----引号

    MySQL语言中的转义字符和各种编程语言基本相同,见下表 形式 含义 \0 0(NUL)字符 \n 换行 \r 回车符 \t 制表符 \b 退格 \' 单引号 \" 双引号 \\ 反斜线 \ ...

  10. android中常用转义字符

    转义字符 实际字符 名称 < < 小于号 > > 大于号 & & 和 &apos; ' 单引号 " " 双引号  

随机推荐

  1. 【BZOJ3331】[BeiJing2013]压力 Tarjan求点双

    [BZOJ3331][BeiJing2013]压力 Description 如今,路由器和交换机构建起了互联网的骨架.处在互联网的骨干位置的核心路由器典型的要处理100Gbit/s的网络流量.他们每天 ...

  2. linux字符集查看与设置

    linux字符集查看与设置 命令:locale -a   查看本地的字符集        locale -m 查看所有支持的字符集   查看当前默认设置   echo $LANG   记录系统默认使用 ...

  3. django启动时报错:Apps aren't loaded yet.

    1.解决方法 编辑manage.py文件,在文件顶部引入django模块.

  4. phpstorm10激活方法

    选择 license server ---> http://idea.lanyus.com/   (末尾的斜杠不能漏了!) 2016-7-5更新 上面的注册方法再试时,已被封杀 2017-9-1 ...

  5. Linux安装Nginx使用负载均衡

    1.实验准备准备三台计算机 nginx1 192.168.13.121 作为nginx负载均衡器nginx2 192.168.13.24  web服务,提供一个页面        nginx3 192 ...

  6. Spring mvc 与 strust

    1. 机制:spring mvc的入口是servlet,而struts2是filter 2. 性能:spring会稍微比struts快.spring mvc是基于方法,单例(servlet也是单例): ...

  7. Linux入门基础(四)——磁盘管理

  8. 变分推断(Variational Inference)

    变分 对于普通的函数f(x),我们可以认为f是一个关于x的一个实数算子,其作用是将实数x映射到实数f(x).那么类比这种模式,假设存在函数算子F,它是关于f(x)的函数算子,可以将f(x)映射成实数F ...

  9. python学习-1-列表,元组,字典,集合,文件操作

    1. 列表.元组操作 names = ['Alex',"Tenglan",'Eric'] >>> names[0] >>> names[2] & ...

  10. 有关numpy.random下的API具体含义

    1.numpy.random.random(size=None) Return random floats in the half-open interval [0.0, 1.0). 返回size大小 ...