C语言数字类型和变量

1. 两种特殊的转义字符:\ddd 和 \xdd是什么?

*   \ddd:   d  d  d表示1~3个八进制的数字。如:\130 表示字符X

10进制的数字:它的每一位都是0~9的数字

8进制的数字:它的每一位都是0~7

如果在编译器输入17,编译器会把其认为成10进制数字,如果在17在前面加上0,计算机就会将其认为成八进制数字。  如图:

将其写成转义字符可得

此处130是八进制的数字,将其进行换算到十进制得到的是88,与ASCII码表相对照,发现88所对应的就是X。

\ddd表示的就是把这个八进制的的数字转换成十进制之后得到的那个值,作为ASCII码值代表的那个字符。此处不能把单引号省略掉,省略掉就是不想要的那个转义字符了。

*  \xdd dd表示2个十六进制数字。  如:\x30  表示字符0.

这里的x是不能省略的,所谓的16进制数字是0~9,剩下的10用a表示,11用b表示,12用c来表示以此类推>>>    字母可以用大写也可以用小写。

\xdd  表示的就是把后面的两个16进制数字转化成10进制之后,把那个字符转化成的ASCII码值代表的字符。

2. C语言是结构化语言,他有哪几种结构?控制语句是什么?

在C语言中,一共有三种结构:顺序结构、选择结构(分支结构)和循环结构。

C语言有九种控制语句,可以分为以下三类:

1.条件判断语句(也叫分支语句):if语句、switch语句;

2.循环执行语句:do while 语句、while语句、for 语句;

3.转向语句:break语句、goto语句、continue语句、return 语句。


3. 为什么要写注释? 编译器是如何看待注释掉的代码的呢?VS2022如何批量注释代码呢?

注释是对代码的解释说明,注释是给自己看,给其他程序员看的,好的代码有利于我们理解代码,但注意不要赘余。也不能不写注释,不利于自己以后理解自己写的逻辑复杂的代码,不利于其他程序员维护代码。

注释有两种形式,第一种是把代码放进/*...*/之间,这种注释可以穿插在行内。比如:

如果一串代码有两个*/ ,这种代码只能注释掉第一个*/下面的就注释不了了。

第二种注释是//,这种注释放在一趟代码的最前面,这种注释只能是单行。

但不管哪一种注释都不能放在双引号里面,否则会被当成普通字符,失去注释作用。

**编译时,注释会被当成一个空格,会被编译器自动忽略

在VS编译器中注释可以全选按快捷键ctrl+k+c,取消注释:ctrl+k+u


4. C语言也有布尔类型?如何使用?

布尔类型-----专门用来创建表示真假的变量,非零表示为真,0就是假

布尔类型的写法:-Bool

布尔类型的使用需要包含头文件<stdbool.h>

布尔类型变量的取值是:true或者false

代码演示:

5. sizeof不是函数? sizeof还有返回值??

sizeof是一个关键字,也是操作符,专门用来计算sizeof的操作符数的类型长度的,单位是字节。

sizeof操作符的操作数可以说类型,也可以是变量或表达式。

sizeof的操作数如果不是类型,是表达式的时候,可以省略后面的括号。

sizeof后面的表达式是不真实参与运算的,根据表达式的类型来得出大小。

sizeof的计算结果是sizeof-t的形式的

 sizeof 运算符的返回值,C 语⾔只规定是⽆符号整数,并没有规定具体的类型,⽽是留给
系统⾃⼰去决定, sizeof 到底返回什么类型。不同的系统中,返回值的类型有可能是
unsigned int ,也有可能是 unsigned long ,甚⾄是 unsigned long long ,
对应的 printf() 占位符分别是 %u 、 %lu 和 %llu 。这样不利于程序的可移植性。
C  语⾔提供了⼀个解决⽅法,创造了⼀个类型别名 size_t ,⽤来统⼀表⽰ sizeof 的返
回值类型。对应当前系统的 sizeof 的返回值类型,可能是 unsigned int ,也可能是
unsigned long long 

C语言标准规定:

sizeof(long)>=sizeof(int)  在这里long可能是8个字节,也有可能是四个字节,但是int类型总是四个字节。

sizeof(long double)>=sizeof(double),此处原理跟上面一样。

 6. 了解一下头文件 limits.h 和 float.h 

limits.h的文件中说明了整型类型的取值范围

float.h这个头文件中说明浮点型类型的取值范围。


7. C语言的数据类型有哪四种? 不同的数据类型有不同取值范围?  char类型是有符号还是无符号?

四种数据类型分为:short、int、long、long long四种。

其实每一种数据类型都有自己的取值范围,也就是存储的数值的最大值和最小值的区间,在limits.h中说明了整型类型的取值范围。

在float.h这个头文件中说明了浮点型类型的取值范围。

C语言规定char类型默认是否带有正负号,大多数是由当前系统决定的(大部分编译器是有符号 char),也就是说,char不同于signed char,他有可能是signed char,也有可能是unsigned char。这跟int 不同,int 就是等同于signed int 。

8. 变量创建的局部有限性原则究竟是什么?

局部变量就是在大括号内部定义的变量是局部变量,局部变量的使用范围比较局限,只能在自己所在的局部范围内使用。

当局部变量和全局变量同名的时候,局部变量优先

9. 局部变量和全局变量分别存在内存中的哪个位置?堆内如何存储变量?

1.局部变量是放在内存中的栈区

2.全局变量是放在内存中的静态区

3.堆区是用来存放动态内存管理的

这次梳理先到这了,下次看能不能讲解些例题,886~

  • 11
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值