C语言-逃逸字符

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



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

#include <stdio.h>
int main()
{
printf("123\b\n456");
return 0;
}
//结果:123
//456
//换成printf("123\bA\n456");
//结果:12A
//456

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



回车和换行来源于古老的打印机,打字从一侧打到另一侧用手推回原位叫回车,然后再换行。注意:平时我们只打/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 <stdbool.h> ,之后就可以使用bool和true、false

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

最新文章

  1. strtol 函数用法
  2. 在Windows上运行InfoPi
  3. 炉石传说 C# 设计文档(序)
  4. NumberSort选择法、冒泡法排序
  5. IE代理文件自动设置
  6. [转]JSON与XML的区别比较
  7. bzoj 1408 [Noi2002]Robot(欧拉函数)
  8. TCP/IP 中的二进制反码求和算法
  9. Java jdbc数据库连接池总结!(转)
  10. 【C语言的日常实践(十二)】命令行参数
  11. 201521123080《Java程序设计》第9周学习总结
  12. 你绝不能错过的效率神器 —— Alfred
  13. navicat连接centos7上mysql:2003-Can&#39;t connect to MySQL server (10060)
  14. asp.net IHttpModule浅析
  15. Apex计划作业框架的实现
  16. vue refs v-for 使用注意
  17. 第一个 MVC 应用程序(下半部分)
  18. Spring事务控制和传递性理解
  19. python爬虫1——获取网站源代码(豆瓣图书top250信息)
  20. HDU 4279 Number-------找规律题

热门文章

  1. 安装oracle客户端后,怎样设置电脑的环境变量?
  2. CRM:异步加载下拉列表,三个列表出现同样的下拉框
  3. JAVA虚拟机:对象的创建
  4. docker 为镜像添加ssh服务-docker commit命令创建
  5. 微信小程序IOS真机调试发生了SSL 错误,无法建立与该服务器的安全连接
  6. Day7 - F - C Looooops POJ - 2115
  7. mysql批量插入更新操作
  8. 二次urldecode注入
  9. openssl生成CA签署 及 加密解密基础
  10. Exchange 2003 群集迁移 &amp; SPS 2003 迁移、SQL Server 2000群集