<>C语言复习 第一章 C语言概述

计算机组成结构:

计算机系统组成:

程序和指令:

* 指令是对计算机进行程序控制的最小单位;
* 所有的指令的集合称为计算机的指令系统;
* 程序是为完成一项特定任务而用某种语言编写的一组指令序列。

70年代初,贝尔实验室正式发表了C语言。
1983年发表了C语言标准ANSIC。
C语言有32个关键字:

关键字分类:

9种控制语句:

34种运算符:

C语言优点:

* 代码量小;
* 执行速度快;
* 功能强大
* 编程自由
缺点:

* 写代码实现周期长;
* 可移植性较差;(与汇编语言相比,C语言可移植性比较好)
* 过于自由,经验不足易出错;
* 对平台库依赖较多。
面向过程概念:分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用。

面向对象概念:把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。

第一个C程序:hello.c
#include<stdio.h> int main(void) { printf("hello,world\n"); return 0; }
在VS中编译运行可能会一闪而过,解决方法之一:

* 在return语句前加上, system("pause");
关于system函数:在已经运行的程序中执行另外一个外部程序,后面会讲到。

* 其他方法参考百度。
在Linux系统中用gcc编译器编译
gcc -o hello hello.c
在Windows系统使用gcc编译器方法之一,安装QT平台,配置环境变量,命令:
gcc -o hello.exe hello.c
#include<>和#include" "的区别:

* < > 表示系统直接按系统指定的目录检索;
* " " 表示系统先在 “” 指定的路径(没写路径代表当前路径)查找头文件,如果找不到,再按系统指定的目录检索。
main函数是C语言程序的入口,程序是从main函数开始执行,return代表函数执行完毕,返回return代表函数的终止。
int main()和void main()在C语言中是一样的,但C++只接受int main这种定义方式。

system函数:

* 功能:在已经运行的程序中执行另外一个外部程序;
* 参数:外部可执行程序名字;
* 返回值:成功:不同系统返回值不一样,失败:通常是 - 1
示例: #include <stdio.h> #include <stdlib.h> int main() { //system("calc");
//windows平台,打开计算器 system("ls"); //Linux平台, 查看当前目录文件 return 0; }
system函数使用需包含头文件stdlib.h

C语言所有的库函数调用,只能保证语法是一致的,但不能保证执行结果是一致的,同样的库函数在不同的操作系统下执行结果可能是一样的,也可能是不一样的,Linux的发展离不开
POSIX标准
,只要符合这个标准的函数,在不同的系统下执行的结果就可以一致,Unix和linux很多库函数都是支持POSIX的,但Windows支持的比较差,如果将Unix代码移植到Linux一般代价很小,如果把Windows代码移植到Unix或者Linux就比较麻烦。

QT图形界面调用system函数:
1.打开QT,新建项目;(注意:QT平台下创建项目不能含有中文路径);
2.在打开对话框中选择QT图形化界面;
3.在新建好的项目中拖拽空间 push button 按钮
4.双击按钮,更改按钮名称;
5.右击按钮,选择转到槽…,打开对话框;
6.导入系统库 stdlib.h 输入system(“calc”);

如何使运行时不弹出CMD窗口:
7.导入系统库windows.h 输入WinExec(“calc”,SW_HIDE); 系统调用时默认隐藏黑窗口。

在VS平台下创建图形化界面:(MFC)略

C语言编译过程:

1.预处理:
1)宏定义展开
2)头文件展开
3)删除注释
4)条件编译
格式:gcc -E a.c -o a.i
2.编译:
1)检查语法
2)转化成汇编语言
格式:gcc -S a.i -o a.s
3.汇编:
1)将汇编语言转化成机器语言
格式:gcc -c a.s -o a.o
4.链接:
1)将库文件链接变成可执行文件
格式:gcc a.o -o a.exe

处理由C语言函数警告的操作:
#idefine _CRT_SECURE_NO_WARNINGS 放在程序第一行
或#pragma warning(disable:4996)

技术
©2019-2020 Toolsou All rights reserved,
TP6验证器的使用示例及正确验证数据自宣布投资比特币以来 特斯拉市值蒸发逾2000亿美元华为认证HCIA-AI人工智能Java基础(冒泡排序)IAR安装使用教程GDOI2019 游记关于过年PYTHON入门期末复习汇总蚂蚁集团董事长井贤栋安抚员工:公司终究会上市的王者荣耀背景故事整合