C语言 —— 关键字

关键字


第一个程序的"Hello World"

  • 文本代码文件 ——> 可以执行的程序(二进制文件)
  • 我们自己是写代码,编译器的角色就是把我们的代码变成二进制文件
    • 同理 我们在 windows 中双击的本质,就是运行程序,将程序加载到内存当中去,
    • 任何程序的运行都是需要加载到内存当中去的,《冯诺依曼体系结构体》
    • 输入,运算器,控制器,存储器,输出
  • 程序没有运行时是在硬盘当中的,运行时是在内存当中的,:因为,快,节约成本,让大家都可以使用到计算计。
int main()
{
	printf("Hello World\\n");
	
	return 0;
}


变量

  • 计算机是为了解决人们计算数据上的问题,所以我们需要数据,而计算机不是任何一刻都需要数据,而变量就是用来存放数据的。
  • 定义变量的本质
    • 就是存放数据的,在内存中开辟一空间,用来存放数据的,注意是在内存当中开辟的空间。
    • 因为:
    • 定义变量也是程序的逻辑上的一部分,程序的运行是在内存中进行的
  • 所有的变量本质上都是在内存中开辟一块空间的
    • 变量是在运行的时候才会开辟空间
    • 而程序只存在运行的时候才加载的内存空间中去
    • 当你定义一个变量的时候就已经在内存中开辟空间了。
  • 变量的定义才会开辟空间,而且同一个变量只能定义一次,
  • 变量的声明不会开辟空间,可以声明无数次

作用域,生命周期

在这里插入图片描述


在这里插入图片描述

解析

  • 上述代码 ,中我们的 j 是在 if 语句定义的,除了该作用域,就是失效了。什么 未定义标识符 “j”

寄存器 register

  • 局部变量上的使用,(全局的 会导致 CPU 寄存器长时间被占用)
  • 不会被写入(写入变量要写回到内存当中去,后续还要读取到寄存器当中去,失去了其寄存器的意义了)
  • 高频被读取的(提高效率所在)
  • 如果使用 寄存器 register 数量有限不一定成功的

注意:

  • register 修饰的变量,是不能取地址的,因为已经放在寄存区中去了,地址是内存相关的概念,在寄存区中不存在的

int main()
{
	register int num = 100;
	printf("%p\n", &num);  // %p 打印地址

	return 0;
} 


结果:

在这里插入图片描述


最后:

限于自身的水平,其中存在的错误 ,请大家给予指教,韩信点兵——多多益善,谢谢大家!后会有期,江湖再见!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值