C语言入门书籍知识点记录

1. 数据在内存中的存储(二进制存储)

内存条:电路的电压有两种状态:0V或者5V,对应的一个元器件有2种状态:0 或者1.

  一般情况下我们不一个一个的使用元器件,而是将8个元器件看做一个单位。

  一个元器件称为1比特(Bit)或1位,8个元器件称为1字节(Byte)

  8*1024个元器件就是1024Byte,简写为:1KB;

  8*1024*1024个元器件就是1024KB,简写为1MB;

2.====载入内存,让程序运行起来=====

以安装QQ为例:

  1> 安装的QQ软件是保存在硬盘中的,双击QQ图标,操作系统就会知道你要运行这个软件,它会在硬盘中找到这个软件,将数据复制到内存中。QQ不是在硬盘中运行的,是在硬盘中运行的。因为内存的读写速度比硬盘快很多。

  读写速度:内存 > 固态硬盘 > 机械硬盘。机械硬盘是靠电机带动盘片转动来读写数据的,而内存条通过电路来读写数据,电机的转速没有电的传输入读快。虽然固态硬盘也是通过电路来存取数据,但是因为与内存的控制方式不一样,速度不及内存。

  

不管是运行QQ还是编辑Word文档,都是先将硬盘上的数据复制到内存,才能让CPU来处理,这个过程叫作:载入内存。完成这个过程需要一个特殊的程序,这个程序就叫做加载器。

  CPU直接与内存打交道,它会读取内存中的数据进行处理,并将结果保存到内存。如果需要保存到硬盘,才会将内存中的数据复制到硬盘。

  例如:打开Word,输入一段文字,新增的文字只是保存到了内存,Ctrl+S 才会保存到硬盘。因为内存断电之后会丢失数据,所以如果你编辑完Word文档没有保存就关机,那么你将永远无法找回这些内容。

  虚拟内存:如果我们运行的程序较多,占用的空间就会超过内存容量。例如:计算机的内存容量是4GB,去运行10个程序,这10个程序共占用5G的空间,就意味着需要从硬盘复制5G的数据到内存,这显然是不可能的。

  操作系统:OS 为我们解决了这个问题,当程序运行需要的空间大于内存容量的时候,内存中暂时不用的数据再写回硬盘,需要这些数据时再从硬盘中读取,并将另外一部分不用的数据写入硬盘中,这样硬盘中就会有一部分空间来存放内存中暂时不用的数据,这一部分空间就叫做虚拟内存。

  5G -4G = 1G,上面的情况需要在硬盘上分配1G的虚拟内存。

硬盘的读写速度比内存慢很多,反复的进行交换数据会消耗很多时间,如果内存太小,会严重影响计算机的运行速度,甚至会出现“卡死”的现象,即使CPU强劲,也不会有很大的改观。如果经济允许,建议将内存进行升级。

========ASCII 编码,将英文存储到计算机======

   前面我们已经讲到,计算机是以二进制的形式来存储数据的,它只认识0和1两个数据,我们在名目上看见字,在存储之前都被转换成了二进制(0和1序列),在显示时也要根据二进制找到对应的字符。

  可想而知,特定的文字必然对应着固定的二进制,否则在转换时将发生混乱。对应文字与二进制的规范成为:字符集或者字符编码。

  ASCII : American Standard Code for Information Interchange 的缩写,翻译过来就是:美国信息交换标准代码。

ASCII 编码表:

  二进制:00000000   十进制:0   字符/缩写:NUL(NULL)   解释: 空字符

  二进制: 0000 1101 十进制:13  字符缩写:CR(Carriage Return)解释: 回车键

   二进制: 0010 0000   十进制:32  字符缩写:(Space) 解释: 空格

  二进制:0011 0000  十进制:48  字符缩写: 0

  二进制:0100 0001  十进制:65  字符缩写:A

  二进制:0110 0001  十进制:97   字符缩写:a

==========第一个C语言程序==============

输出:Output

字符:Character

字符串:String

第一个程序:

#include<stdio.h>

int main()

{

  puts("C 语言中文网");

  return 0;

}

====全角和半角输入法的区别====

全角和半角的区别主要在于除汉字以外的其他字符,比如标点符号、英文字母、阿拉伯数字,全角字符和半角字符占用的位置的大小不同。

  在计算机屏幕上,一个汉字要占两个英文字符的位置,人们把一个英文字符所占的位置称为半角,把一个汉字所占的位置称为全角。

====源文件====

在开发软件的过程中,我们需要将编写好的代码保存到一个文件中,这样代码才不会丢失,才能够被编译器找到,才能最终变成可执行文件。这种用来保存代码的文件就叫做源文件(Source file)

每种编程语言的源文件都有特定的后缀,以方便被编译器识别,被程序员理解。源文件后缀大都根据编程语言本身的名字来命名,例如:

  C语言的源文件后缀是.c

   C++ 语言的后缀是.cpp(C Plus Plus)

============C语言编译器===

上端:桌面端: Visual C++

下端:嵌入式系统端:arm架构平台

程序:程序是一个比较宽泛的称呼,可以细分为:控制台程序、GUI程序,静态库、动态库等。

===使用code:block===

程序==> 新建 ==> 空白文件【Ctrl + Shift + N 】

修改源文件:文件 --> 保存文件【Ctrl + S】

编译:构建--> 构建【Ctrl + F9】

编译并执行:构建 --> 构建并执行【F9】

=====第一个程序修改====

#include<stdio.h>

#include<stdlib.h>

int main(){

  puts("123456");

  system("pause");

  return 0;

}

======函数====

在C语言中,有的语句使用时不能带括号,有的语句必须带括号,带括号的称为函数(Function).

较早的C语言标准库中包含了15个投文件,stdio.h和stdlib.h 是最常用的两个;

stdio 是standard input output 的缩写,stdio.h 被成为:标准输入输出文件,包含的函数大都和输入输出有关系,puts()就是其中之一。

stdlib.h是 standard library 的缩写,stdlib.h 被称为:标准库文件,包含的函数比较杂乱,多是一些通用工具型函数,system() 就是其中之一。

===C语言代码中的空白符====

空格、制表符、换行符等统称为空白符(Space character),他们只用来占位,并没有实际的内容,也显示不出具体的字符。

制表符分为水平制表符和垂直制表符,他们的ASCII编码值分别是9和11.

垂直制表符被换行符取代了,水平制表符相当于四个空格。

 

posted on 2020-02-22 18:09  萧橘子  阅读(229)  评论(0编辑  收藏  举报

导航