system函数
1:头文件包含头文件:stdlib.h
#include <stdlib.h>
int main()
{
system("calc");
return 0;
}
```上述代码运行结果为打开计算机
同样的,如:notepad为打开记事本,mspaint为打开画图板,osk(软键盘<但不是所有的电脑都有该操作>)。(cmd命令)
system可以打开一个外部应用程序 如果带路径则需要\\ 或者是/
且system函数执行成功返回一个int型的0,失败则返回任意数字。
%d是一个占位符,表示输出一个整型数据。
**二,c语言编译过程**
c代码编译可执行程序经过4步
1)预处理:宏定义展开、头文件展开、条件编译等,同时将代码中的注释删除,这里并不会检查语法。
2)编译:检查语法,将预处理后文件编译生成汇编文件。
3)汇编:检查语法,将预处理后文件编译生成目标文件(二进制文件)
4)链接:c语言写的程序是需要依赖各种库的,所以编译之后还需要把库链接到最终可执行程序中去
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200118173801960.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTc0NDk4Ng==,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200118174933439.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTc0NDk4Ng==,size_16,color_FFFFFF,t_70)
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200118195946699.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTc0NDk4Ng==,size_16,color_FFFFFF,t_70) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200118203922895.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTc0NDk4Ng==,size_16,color_FFFFFF,t_70)
常见的代码问题:
1、编辑时异常
2、编译时异常
3、运行时异常
***64位和32为系统·的·区别***
1:寄存器是CPU内部最基本的存储单元
2:CPU对外是通过总线(地址控制,数据)来和外部设备交互的, *总线的宽度是8位,同时这个CPU的寄存器也是8位,*那么这个CPU就叫8位CPU
3:如果总线是32位,寄存器也是32位的,那么这个CPU就是32位CPU
4:有一种CPU内部寄存器32位的,但总线是16位,准32位
5:所有64位CPU兼容32位指令,32位要兼容16位的指令,所以在64位的CPU上是可以识别32位的指令
7:在64位的CPU构架上运行了64位的软件操作系统,那么这个系统是64位
8:在64位的CPU构架上,运行了32位的软件操作系统·,那么这个操作系统就是32位。
寄存器,缓存,内存三者关系
按与CPU远近来分,离得近的是寄存器,然后再把即将要用的数据读到寄存器。于是CPU<-->寄存器<-->内存,这就是它们之间的信息交换。
那为什么有缓存呢?因为如果经常操作内存中的同一地址的数据,就会影响速度。于是在寄存器与内存之间设置一个缓存。
因为从缓存中提取的速度远高于内存。当然缓存的价格肯定高于内存,不然的话,机器里就不会存在内存。
由此可以看出:从远近来看:CPU<-->寄存器<-->缓存<-->内存。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200119145031130.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTc0NDk4Ng==,size_16,color_FFFFFF,t_70)