0 、 '0' 、 0 、 ’\0’ 区别

news/2024/11/24 18:34:00/

转载自:https://blog.csdn.net/qnavy123/article/details/93901631
在这里插入图片描述

‘0’ 代表 字符0 ,对应ASCII码值为 0x30 (也就是十进制 48)
‘\0’ 代表 空字符(转义字符)【输出为空】 ,对应ASCII码值为 0x00(也就是十进制 0), 用作字符串结束符
0 代表 数字0 ,若把 数字0 赋值给 某个字符,对应ASCII码值为 0x00(也就是十进制0)
“0” 代表 一个字符串 ,字符串中含有 2个字符,分别是 ‘0’'\0’

下面补充说明

char ch_0 = ‘0’; // 字符0 赋值给一个字符,实际赋的 码值 为 0x30,十进制48

	std::cout << ch_0 << '\n';      // 输出的 是 码值0x30 对应的 字符 0, 界面上看到的是0std::cout << int(ch_0) << '\n';    // 输出的 是字符 ‘0’ 对应的码值  0x30,即十进制48  ,界面上看到的是 48

char ch_0 = ‘\0’; // 字符‘\0’ 赋值给一个字符,实际赋的 码值 为 0x00,十进制0

	std::cout << ch_0 << '\n';     // 输出的 是 码值0x00 对应的 空字符【NULL】, 界面上看到的是 空白,什么也看不见std::cout << int(ch_0) << '\n';    // 输出的 是字符 ‘\0’ 对应的码值  0x00,即十进制0  ,界面上看到的是 0

char ch_0 = 0; // 数字0 赋值给一个字符,实际赋的是 码值

	std::cout << ch_0 << '\n';    // 输出的 是 码值0 对应的 字符,此处为 空白字符,即输出为空,界面上什么也看不见std::cout << int(ch_0) << '\n';    // 输出的 是码值  0x00,即十进制0  ,界面上看到的是0

char ch_0[ ] = “0”; // 字符串 “0” 初始化字符数组

	std::cout << sizeof(ch_0) << ‘\n’;     // 输出 ch_0 字节数, 界面显示 为2std::cout << ch_0[0] << '\n';             // 输出字符 ‘0’,界面上看到的是 0 std::cout << ch_0[1] << '\n';            // 输出字符 ‘\0’,界面上看到的是 空白std::cout << int( ch_0[0] )<< '\n';     // 输出字符 ‘0’ 对应的码值 0x30,界面上看到的是 48std::cout << int ( ch_0[1] )<< '\n';    // 输出字符 ‘\0’ 对应的码值 0x00,界面上看到的是 0

总结:记住几点

① 用数值 给某个字符变量赋值时,相当赋与该数字相同码值所对应的字符
② 用 字符给某个字符变量赋值时,即赋字符本身
③ ‘\0’ 对应的码值为0,界面显示为空白


http://www.ppmy.cn/news/722767.html

相关文章

Python进制转换后去掉“0b“,“0x“,“0o“

Python在进制转换之后会带上“0b”、“0x”、“0o”的进制转换符&#xff0c;而在具体使用过程中&#xff0c;很多时候我们又并不希望输出的结果带上进制前缀&#xff0c;因此就需要方法去除进制前缀&#xff0c;可以通过以下两种方式解决&#xff1a; 使用截取字符串的方法&a…

Python - 0b、0o、0x

a 0b010 b 0o010 c 0x010 print(type(a),a) print(type(b),b) print(type(c),c) #------------- print(0b010&0b111) print(0b001|0b010) print(0b010^0b100) print(~0b001) #原码->补码->求原码&#xff08;原码的值&#xff0b;符号位即为最后的真值&#xf…

0 、 '0' 、 0 、 ’\0’ 区别

在说明这个问题前&#xff0c;首先要搞明白 什么是ASCII码值 不明白的看以下链接中的ASCII 字符代码表&#xff1a; https://baike.baidu.com/pic/ASCII/309296/0/e850352ac65c103880a07b53bc119313b17e8941?frlemma&ctsingle#aid0&pice850352ac65c103880a07b53bc11…

二进制、八进制、十进制、十六进制的前缀和后缀

以下的示例均可在浏览器中按F12在控制台中试验 1.0B 表示二进制的前缀 这个它是以ob开头后面的数字都是二进制数 即:全部都是0和1 例如:0B10101010111 2.0O(O 大写英文字母O) 表示八进制的前缀 也可以使用空格加上0 注意是空格加上0 即:" 0" 例如 在chrome中…

Python_0b、0o、0x进制转换/原码、反码、补码

一、进制转换 1.二进制0b、八进制0o和十六进制0x转换为十进制的方法&#xff1a; 设目标数字为n&#xff0c;相关进制为x&#xff0c;将数字n从右向左分解&#xff0c;分别乘以x的零次方、一次方等并相加。 2.十进制转换为二进制0b、八进制0o和十六进制0x的方法&#xff1a;…

Python进制,数据类型转换,运算符

进制 python可以表示二进制&#xff0c;八进制&#xff0c;十六进制&#xff0c;十进制&#xff0c;默认是十进制 默认是十进制0b开头是二级制0o开头是八进制0x开头是十六进制&#xff1a;0-9&#xff0c;a-fprint打印的默认是十进制 进制的转化&#xff1a; 十进制的数除以2得…

2023年07月在线IDE流行度最新排名

点击查看最新在线IDE流行度最新排名&#xff08;每月更新&#xff09; 2023年07月在线IDE流行度最新排名 TOP 在线IDE排名是通过分析在线ide名称在谷歌上被搜索的频率而创建的 在线IDE被搜索的次数越多&#xff0c;人们就会认为它越受欢迎。原始数据来自谷歌Trends 如果您相…

低浓度镍离子去除技术,重金属深度处理技术

当前国内处理电镀废水主要是先将其分成3类。1、含铬废水&#xff1a;主要用还原来处理六价铬。2、含氰废水&#xff1a;主要用破氰来处理。3、其他废水&#xff1a;包括铜&#xff0c;镍&#xff0c;锌等。 电镀废水中的主要污染物为各种金属离子&#xff0c;其次是酸碱物质&a…