一、C预备知识

一、C预备知识

将之前在B站上看的郝斌老师的C语言课程整理一下,虽然都是很基础的东西,但还是需要经常回顾。

1.CPU、内存条、硬盘、显卡、主板、显示器之间的关系

  • 如果播放硬盘里的电影,先将数据读入内存条,cpu再对内存条里的数据进行处理,主板将各种器件联系起来。
  • CPU和GPU:CPU基于各种指令集实现统筹逻辑等复杂工作,而GPU擅长对大数据进行简单重复工作。
  • 经过CPU调度或生成的图像、视频,游戏画面均通过总线传递给GPU,而GPU把这些画面数据翻译成显示器能读懂的数据传递给显存,继而显存再传递给显卡的视频控制器。

内存的基本概念

  • 内存是用来存储数据的设备。它的存储速度介于寄存器和硬盘之间
  • 内存是cpu唯一可以访问的大容量的存储设备,所有硬盘中的程序和数据必须调入内存之后方可被cpu执行。切记:cpu不能直接处理硬盘中的数据
  • 内存的问题是软件开发中最核心的问题之一。如:内存的分配,内存的释放,内存什么时候分配,内存什么时候释放,由谁来分配,由谁来释放,分配在什么地方,访问权限如何。
  • 内存是多字节组成的线性一维存储空间
  • 内存的基本划分单位是字节
  • 每个字节有8位,每一位存放1或者0
  • 字节和编号是一一对应的,每一个字节都有一个唯一确定的编号,这个编号也叫地址
  • 一个系统所能管理的内存空间的大小取决于参与编号的二进制位数

Hello world如何运行

通过编译.c文件生成.exe的可执行文件,之后操作系统调用cpu执行.exe文件。

2.什么是数据类型

1.基本数据类型:整数,浮点数,字符

  • 整数:整型(int);短整型(short int);长整型(long int,一般写成long long)

  • 浮点数:单精度浮点数 (float);双精度浮点数(double ,有时候会浪费内存)

  • 字符:单个字符(char)char ch = ‘A’;

2.复合数据类型:
结构体,枚举,共用体

3.什么是变量

变量的本质是内存的一段存储空间
程序运行完毕之后会自动释放

4.CPU、内存条、VC、操作系统之间的关系

VC请求操作系统分配内存,cpu对内存中的数据进行处理

5.变量为什么要初始化

变量初始化即赋值的意思
未赋值,将填充字(一般是垃圾值)放入变量中

6.如何定义变量

1.数据类型 变量名 = 要赋的值;
2.数据类型 变量名;
变量名=要赋的值;

7.什么是进制

N进制:逢N进一
%d:十进制
%x:十六进制
%0:八进制

8.常量在c语言是如何表示的

整数:十进制,十六进制0x,八进制0
浮点数:float x = 3.2e3
字符:单个字符用单引号括起来,字符串用双引号

9.常量是以什么样的二进制代码存储在计算机中

整数:以补码的形式转化为二进制代码存在计算机中
实数:以IEEE754标准转化为二进制代码存储
字符的本质实际与整数的存储方式相同

10.代码的规范化

推荐资料:《高质量c/c++编程》林锐
成对:if()先敲完整的括号
缩进:地位同等不缩进,内部代码缩进
换行:定义变量/对变量进行操作/输出,通过换行将三部分分开
不同功能模块通过换行分开

11.什么是字节

字节即数据存储单位,硬件能访问的最小单位
1字节=8位
1K=1024字节
1M=1024 K
1G=1024M

12.不同类型数据之间相互赋值的问题

与补码有关

13.什么是ASCII

ASCII不是一个值,而是一个规定,规定不同字符使用哪个整数值去表示

14.字符的存储

字符本质上与整数的存储相同

15.建议

学完c语言再学c++
代码规范化
增加代码的可读性
降低代码出错的可能性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值