初始C语言——————青铜的进阶之路

目录

“彗星般的人生可以短暂,但绝不黯淡或沉沦。”

                                                                                —— 纳兰容若

​编辑

 一、数据类型

 二、常量

(1)、字面常量的种类:

 (2)、变量的作用域和声明周期

三、转义字符

四、操作符

​编辑

 小故事:

最后的附上一段话:


“彗星般的人生可以短暂,但绝不黯淡或沉沦。”

                                                                                —— 纳兰容若

 一、数据类型

1)、数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量储存所占用的空间。

C中的类型有以下几种

C语言中的整数型和数学中的整数是一样的,基本整型简称整型,用int表示;短整型用short int表示,长整型用long int表示。那为什么要分为long int 和short int呢??这就是要说道内存了,内存和硬盘相比容量是很小的,所以要考虑内存节约的问题。比如数字10存放在4个字节的int就够了,但如果存放在long int(8个字节)就显得浪费空间了。

说到内存,每个数据类型都有它本身占多大的字节数

1byte(字节)=8个bit(位)

1 KB = 1024Byte(字节)

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

 二、常量

C语言中的常量分为以下几种:·
· 字面常量

·const修饰的常变量

·#define 定义的标识符常量

·枚举常量

(1)、字面常量的种类:

1)、整型数值 如  22 33

2)、浮点型  如double类型的33.3

3)、字符串类型

4)、字符型

我们创建char类型的数组ch1和ch2,里面存放这abcdef的字符和字符串,我们输出会发现ch1还有中文乱码

 我们想一想,这是为什么呢???所以我使用了调试,我们发现ch2中多了一个\0,我们就知道了\0是字符型结束的标志 ,而ch1出现了中文就可以理解为我们向计算机申请了一块内存,而ch1内存的后面我们不确定是什么,而ch2字符串后面是\0,当在不同的编译环境下,ch1就会形成不同的结果。

当然,我们也可以通过使用strlen函数来证明

这时就说明了由于ch1内存后面不知道什么时候遇到\0,所以是随机值,而ch2中有\0,所以打印出来的个数就是6 

 (2)、变量的作用域和声明周期

作用域:  所谓作用域(Scope),就是变量的有效范围,就是变量可以在哪个范围以内使用。有些变量可以在所有代码文件中使用,有些变量只能在当前的文件中使用,有些变量只能在函数内部使用,有些变量只能在 for 循环内部使用。

比如我们定义了全局变量a和局部变量a,我们在有效的区域中我们优先使用的是局部变量,{}就是我们的局部变量的作用域,出了{},就是全局变量起了作用

生命周期:即指的是程序在运行过程中,变量在内存中的从创建到销毁的生存期。

三、转义字符

1)、既然提到了字符,就不得不讲转义字符,转义字符就是转变意思。

转义字符(Escape Character)是指在ASCII码和Unicode等字符集中的无法被键盘录入的字符被当作特殊用途而需要转换回它原来的意义的字符。而转义字符转义是指字符已经被转换了意义。

比如,当我们输出‘\a’,电脑就有叮的一声,代码如下

int main()
{

	printf("\a");
	return 0;
}

通过这个输出这个例子,我们就可以发现\t  \328是转义字符,算一个字符,所以输出的结果是14

四、操作符

1)、算数操作符

+ - *  /  %

 在数学中x是乘法的意思,而在计算机中*是乘法的意思,/是除法的意思,得到是除数,%是取余,得到的是余数

比如我们定义了变量a和b,用a/b,和a%b分别得到的就是他们的除数和余数 

2)、位操作符

<<   左移操作符

>>   右移操作符

ps:移动的只能是整数,不能使用浮点数

那么我们就不得不讲一讲原码,补码,反码了

 为什么讲这个呢,因为在计算机中,一个整数在内存中存储的是补码!!!

我们定义了一个int类型的a变量,我们使用<<左操作符,就是a向左移动2位,就得到了a=6

 又比如我们定义int类型的a变零,使用右操作符,就是补码向右移动2位,左边补0,就可以得知a>>1就是4

 小故事:

程序猿:一般来说,一个寝室的长度应该是1~2个字节,因为里面一般住4~8个2b。

最后的附上一段话:

“选一个方向,定一个时间;剩下的只管努力与坚持,时间会给我们最后的答案”

                                                  

  • 26
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 18
    评论
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值