我大家应该经常听到什么占位符啊、转义符啊、转换符啊。
都知道说出来是什么。
很多人都回答说
就是将东西转换为想要的东西
![](https://qn.ddrrj.cn/ddbj/2023/11/20231122134025412.jpg-ddrrj)
先别急着说
你会了
其实是
你毁了
![](https://qn.ddrrj.cn/ddbj/2023/11/20231118205026279.jpg-ddrrj)
很多人说这东西片面的了解就好,而不是
知了这个道
我们先知道知道一下转换符:
在编程标准中,”转换符”通常是指在字符串格式化中使用的占位符或格式说明符。它们用于指定在将数据插入到字符串中时如何进行格式化。在许多编程语言中,转换符以百分号
%
开头,后面跟着一个字符,表示要插入的数据类型或格式。
转换符 | 解释 | |
%d | 转为整数 | |
%f | 转为实数 | |
%u | 转为无符号型整数 | |
%o | 转为八进制 | |
%x | 转为十六进制 | |
%p | 转为地址指向的值 | |
%c | 转为字符 | |
%s | 转为字符串 | |
%g | 转为实数但去掉有零以后的值 | |
%e | 转为实数里的浮点值 |
注意:
转换符是需要参数的!直接按照格式化标准转换参数
然后在知道知道一下转义符:
在编程标准中,”转义符”是一种用于改变字符原始含义的特殊字符。通常,这些字符以反斜杠
\
开头,后面跟着另一个字符。转义符允许你在字符串中插入一些特殊字符,这些字符通常在字符串中具有特殊的含义。
转义符 | 解释 | |
\a | 叮的一声 | |
\b | 退格 | |
\f | 换页 | |
\n | 换行 | |
\r | 回车 | |
\t | 行表 | |
\v | 列表 |
注意:
转义符不需要参数,直接按照标准转换意义
其它:
运算符
用于执行各种数学和逻辑运算的符号,例如加法(+)、减法(-)、乘法(*)、除法(/)、取余(%)、等于(==)、不等于(!=)等。
逻辑运算符
用于组合和比较布尔值的运算符,例如与(&&)、或(||)、非(!)等。
比较运算符
用于比较两个值的大小或相等性的运算符,例如大于(>)、小于(<)、大于等于(>=)、小于等于(<=)等。
分隔符
在代码中用于分隔不同的语句或代码块的符号,例如分号(;)、花括号({})、括号(())等。
点号 .
在许多编程语言中,用于访问对象的属性或调用对象的方法。
注释符
用于添加注释的符号,例如在Python中使用的#
。
引号
用于定义字符串的符号,可以是单引号(’)或双引号(”)。
位运算符
用于对二进制位进行操作的符号,例如按位与(&)、按位或(|)、按位取反(~)
等。
其它的这些不是我们今天说的主题
![](https://qn.ddrrj.cn/ddbj/2023/11/20231122155831154.png-ddrrj)
我们今天要了解的是
格式化中各种转的意义
说到这,我就要再重复前面一句话。
很多人都回答说将东西转换为想要的东西。
但是,格式化里的
格式
和
化
你了解吗?
格式这个词竟然很神奇的百度无法完全说明白,而格式化这个就更没办法说明白了。
竟然没人去创建这个词条?
话说你们谁可以去创建一下,有钱赚的。
但前提是
别拿我的解释去写词条!!!
戴戴说说的是自己的解释:
格式
在先祖时期,写一个文章,都是用刻字,什么东西都可以拿起来刻字,但没有一个完美的规格,写出来的就会上下左右乱七八糟,给人看的一头雾水。
![](https://qn.ddrrj.cn/ddbj/2023/11/20231122152757368.jpg-ddrrj)
后来古人就发明了竹简,竹简就是一根根竹简,竖着写字。然后一根根的组合成竹简书。给人看了一束一束的字工工整整,很有规矩,不会看的眼花缭乱。
![](https://qn.ddrrj.cn/ddbj/2023/11/20231122152857697.png-ddrrj)
再后来,有了纸。但是一张白纸你要是写不好,也是上下左右不整齐,容易让人看乱。就有人在白纸上面规划好一个一个的格子,横竖都规划的整整齐齐。然后再格子里一个一个的写字进去。
![](https://qn.ddrrj.cn/ddbj/2023/11/20231122153016100.jpg-ddrrj)
——这就是早期的规格,但规格的意思是多样化的它可以一大格,也可以一小格,后来也就有一个更严肃的词
格式
所以,戴戴的解释就是,格式是一种固定大小标准。规格可以人为修改大小,而格式标准是不可修改的。
格式的级别,要高于规格。
格式>规格
当然,网络上面没有参考来源,因为我喜欢看古书,所以我自己想象的。
而
化
解释很多,但在计算机编程里。化的意思是固定了,就这样了的意思。
格式化
也就是编程输入输出时,一定按这个标准输入输出
其它的天王老子来了也不行
所以,我们再一个代码里:
char latter=0;
scanf("%d",&letter);
printf("这个字母是%c\n",letter):
这一段代码你可以看看,
格式化转换输入:
%d
一定是整数数字类型的,你放个字母,字符下去的话:
![](https://qn.ddrrj.cn/ddbj/2023/11/20231122145742823.jpg-ddrrj)
都给你腿打断
letter被定义了char数据类型,经过编译器翻译,在内存里给你开启了一个8位的位置。
scanf()根据stdio.h的标准负责跟编译器说,我要放入一些东西,但是要放什么东西呢?
那就要有一个绝对的标准,而不是乱七八糟的标准。
所以%d这种格式化标准就出现了。
scanf告诉编译器我用stdio.h的标准方式处理一些数据放入内存,这个数据必须、一定是整数类型的数据,不能有其他乱七八杂参杂,不管你输入什么,我都以整数存入。
而printf()也一样,有一段书写是:
这个字母是
的文字输出,后面还有个
%c
这个输出,一定,固定的,按这个标准输出。就是叫爹,我也以字符的形式这样输出。哪怕你之前scanf处理的整数内存溢出,我也是%c输出字符,不然给你腿打断,没结果。
后面还有个
\n
的转义字符
它也一样,天王老子来了,我也是个换行意义。
所以:
这个字母是
是一段书写。
%d %c \n
是书写以后有个固定的格式输出。
不知道这么说,你们懂吗?
这下
转换符、转义符、格式化
知道了吗?
![](https://qn.ddrrj.cn/ddbj/2023/11/20231120114639233.png-ddrrj)
我也不知道我说的对不对,如果有错,请指正。
戴戴
发表回复