设为首页 加入收藏

TOP

2.2.3 转义序列
2013-10-07 14:55:33 来源: 作者: 【 】 浏览:61
Tags:2.2.3 转义 序列

2.2.3  转义序列

字符前的符号\告诉编译器:\之后的字符具有特殊含义,不能沿用其字面含义。这样的一个字符序列称为转义序列。转义序列肯定由两个字符构成,而且两个字符之间没有空格。C++(www.cppentry.com)定义了几个转义序列。

如果希望在一个字符串常量中插入反斜杠\,或者插入双引号",则必须使用\"来转变"的原有功能(结束一个字符串常量),或者使用\\来转变\的原有功能(转义)。\\向编译器表明你需要一个真正的反斜杠\,而不是一个转义序列。\"表明需要一个真正的双引号,而不是结束一个字符串常量。

如果在字符串常量中出现未定义的转义序列(比如\z),有的编译器会返回一个z,有的则会报错。ANSI标准规定,对于未定义的转义序列来说,它的行为是"未定义"的。所以,编译器可以采用其设计者觉得方便的任何方式处理它。其后果是,如果在代码中使用了未定义的转义序列,就失去了"可移植性"。因此,不要使用任何未定义的转义序列。下面列出了C++(www.cppentry.com)定义的一部分转义序列:

换行符\n

水平制表符\t

响铃符\a

反斜杠\\

双引号\"

要在输出中插入一个空行,可以单独输出一个\n换行符,如下所示:

  1. cout << "\n"; 

输出空行的另一种方式是使用endl,它的含义与"\n"相同。所以,还能像下面这样输出一个空行:
  1. cout << endl

虽然"\n"和endl含义相同,但用法稍有区别:\n必须放到双引号内,endl则不能。

\n和endl该如何选择呢?一个较好的依据是:如果\n可以放到一个较长的字符串的末尾,就像下面这样使用\n:

  1. cout << "Fuel efficiency is "  
  2.      << mpg << " miles per gallon\n"; 

而如果需要单独使用一个"\n",就改为使用endl,如下所示:
  1. cout << "You entered " << number << endl

在输出中开始新行

要在输出中换行,可将\n包含到引号字符串内,如下所示:

  1. cout << "You have definitely won\n"  
  2. << "one of the following prizes:\n"; 

记住,\n要作为两个字符来输入,两个字符之间不能有空格。

另一种方法是通过endl来换行,如下所示:

  1. cout << "You have definitely won" << endl 
  2. << "one of the following prizes:" << endl

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇2.1 变量和赋值 下一篇2.1.4 赋值语句

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: