c语言printf打印boolean型,C语言-逃逸字符、类型转换和布尔类型

C语言-逃逸字符

逃逸字符是用来表达无法印出来的控制字符或者特殊字符,它由一个反斜杠“”开头,后面跟上另一个字符,这两个字符合起来,组成一个字符。

d36f1dc1143d62db9b66fdad66e84d6a.png

\b是backspace,在sublime中显示为BS,如果后面不输入的,它就什么结果都没有,如果输入的话会覆盖回退前的那个字符。所以\b是回去但不删除,它由的终端可能是删除。

#include

int main()

{

printf("123\b\n456");

return 0;

}

//结果:123

//456

//换成printf("123\bA\n456");

//结果:12A

//456

\t:使得输出从下一个制表符开始,这样使得上下两行对齐。

85422e5e45b0c63ae5750ecdfd22a841.png

回车和换行来源于古老的打印机,打字从一侧打到另一侧用手推回原位叫回车,然后再换行。注意:平时我们只打/n就换行了,是因为shell一般会将其翻译为回车换行

C语言-类型转换

自动类型转换

当运算符的两侧出现不一致的类型时,会自动转换成较大(或较宽)的类型,大的意思是说能表达的数的范围更大。

char->short->int->long->long long

int->float->double

对于printf,任何小于int的类型都会被转换成int;float会被转换成double,这也是为什么在printf时直接使用%f就足以输出double,不用%lf的原因,但是scanf不会,要输入short,它要明确知道后面变量的大小,需要%hd。

强制类型转换

要把一个量强制转换成另一个类型(通常是较小的类型),需要,(类型)值。比如:(int)10.2;(short)32。但注意这时候的安全性,小的变量不总能表达大的变量。例如short(32768),short最多只能表达32767,所以此时的结果就是-32768,char(32768)的结果是0,因为32768是15个bit的0,第16是1,对于char来说取最低的那8个bit就只能看到0。

强制转换只是从那个变量计算出了一个新的变量类型的值,它并不改变那个变量,无论是值还是类型都不改变。

强制类型转换的优先级高于四则运算。

C语言-布尔类型

include ,之后就可以使用bool和true、false

实际上没有真正的布尔类型,它还是整数,因此在输入输出的时候,并没有特殊的形式输入输出布尔量,只能把它输出一个整数。

标签:类型转换,字符,short,32768,int,C语言,逃逸,类型

来源: https://www.cnblogs.com/Cobby-baby/p/12266453.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值