命名空间与头文件的关系、转义字符

#include<iostream>
using namespace std;
int main(){
	cout<<'\x61'<<'\141'<<endl;//字符‘a’的转义字符,十进制97,十六进制61,八进制141
	//输出aa。
return 0;
}

参考博客
命名空间与头文件的关系:
这样其实我们就可以更好的理解为什么C++程序一定要先写前面两行程序,从逻辑上来讲,一个程序没有输入和输出,那么这个程序的执行是没有意义的,源头嘛,那可能给要从图灵设计图灵机的灵感说起了。所以说为什么是标准输入输出流的头文件,有了头文件只能访问里面的全局变量,而更经常使用的函数在std这个命名空间下,所以这是为我们预先订好了,一定会使用的内置函数。

ASCII码的作用:ASCII值 其实就是编号 给每个常用字符(英文字母,各种符号)编号,ASCII规定了127个字符。 这些编号可以对应转换成2进制的数(例如:64=2的6次方 可以写作:01000000)。所有的ASCII码都可以用“\”加数字(\ddd:八进制;\xhh:十六进制,没有十进制)来表示。

转义字符的作用:

其实所有编程语言,拥有转义字符的原因基本上是两点:一、使用转义字符来表示字符集中定义的字符,比如ASCll里面的控制字符及回车换行等字符,这些字符都没有现成的文字代号。所以只能用转义字符来表示 。二、某一些特定的字符在编辑语言中被定义为特殊用途的字符。这些字符由于被定义为特殊用途,它们失去了原有的意义。比如说Html中,<被HTML定义为标签的开始,所以当我们转入<时,HTML就会把它当作为开始,而不是当作一个<来看待。再如PHP 的双引号("),被PHP定义为字符串的外围标签,所以如果你在一对双引号里面,还想要使用双引号,只能使用转义字符了。不然PHP就会报错了。从上面也可以看出转义无非是两种情况:1:将普通字符转为特殊用途,一般是编程语言中,用于表示不能直接显示的字符,比如后退键,回车键,等。2:用来将特殊意义的字符转换回它原来的意义。一般用在正则表达式中。还有有些脚本语言是弱类型,有些语言比如html 并不是编程语言,而是标记语言,有些语言只有一种类型 比如shell 脚本语言,这些语言中字符串都不加引号” ” ,或者可以不加引号“ ”,所以有时候需要转义字符说明某字符此时的身份是普通字符,而不是有特殊意义的元字符。
另外出于网站的安全。在数据写入数据库前,都会使用转义字符(函数)对一些敏感字符进行转义。这样做可以避免一些别有用心的人利用特殊符号的注入攻击。

猜你喜欢

转载自blog.csdn.net/qq_29611345/article/details/82695307