一、基础语法
(1)计算机和软件开发常识
计算机的基本原理是:存储程序和程序控制。预先要把指挥计算机如何进行操作的指令序列(称为程序)和原始数据通过输入设备输送到计算机内存中。
1.硬件基本构成:硬盘、内存、CPU。
2.各个部件之间的运作协调。
如图:
计算机只能识别0和1
① 0和1组成的指令
② 0和1组成的数据
(二)、计算机语言发展史
机器语言——>汇编语言——>高级语言——>面向对象和面向过程
面向对象的语言有:C语言
面向过程的语言有:JAVA、C#
① 机器语言:能被计算机直接识别,直接对硬件作用(优点)
可读性差,不同计算机型号的机器语言不一样(缺点)
② 汇编语言:直接访问,控制计算机的各种硬件设备、占用内存少、运行速度快(优点)
可移植性差、符号多难记、难调试、开发效率低
(三)、C语言介绍
C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
1972年发明,首次使用时用于重写Unix操作系统。
特点:
① 简洁紧凑、灵活方便
② 运算符丰富
③ 数据类型丰富(相对机器语言和汇编语言)
④ C是结构式语言
⑤ C语法限制不太严格、程序设计*度大
⑥ C语言允许直接访问物理地址,可以对硬件直接进行操作
⑦ C语言程序生成代码质量高,程序执行效率高
⑧ C语言适用范围广、可移植好
版本:
1978 丹尼斯·里奇(Dennis Ritchie)和 布莱恩·科尔尼干(Brian Kernighan) K&R C
1989 美国国家标准局 ANSI C
1999 C99
2011 C11
(四)、第一个C程序-程序的组成
C程序的结构:由函数和声明组成
C程序的入口是一个名字叫做main的函数
代码:
#include <stdio.h> int main() { printf("第一个C语言程序"); return 0; }
(五)、编写一个C语言程序的步骤
① 编写代码
② 编译:把C语言代码翻译成0和1
工具:编译器 (Xcode gcc)(Xcode4 LLVM ——>clang)
指令:cc -c 文件名.c(-c compile 编译)
编译成功会生成一个.o目标文件
③ 链接:其实就是把我们项目中所有相关联的.o目标文件跟系统自带的函数库合并在一起,生成一个可执行文件
链接器
指令:cc 文件名.o
④ 运行
./a.out
(六)、Unix指令
pwd 查看当前路径
ls 列出当前路径的所有内容
mkdir 新建目录
rmdir 删除目录(该目录下面没有文件)
rm删除文件
cd进入/改变当前操作的目录
cd ..返回上一层
cd /返回根目录
touch创建文件
who显示当前用户名
clear清屏
open打开一个文件或文件夹(open ./ 打开当前目录的文件夹)
tab键可补全指令名称、文件名、文件夹名等
注意:
① 在创建文件夹的时候,取名不要留空格 如: (Mac OS),进入这个文件夹的指令如:cd Mac\ OS
② 连续编译:cc -c 文件名1.c 文件名2.c 文件名3.c
③ 编译:只会检测语法是否正确,并不会检测有没有main函数
④ 链接:会检测有没有main函数
(七)、关键字
关键字是C语言提供的有特殊含义的符号,也叫做“保留字”。
特征:
① 全部是小写
② 有特殊的颜色
(八)、标识符
标识符就是在程序中自定义的一些符号和名称,要跟关键字区分。关键字是C语言默认提供的符号,标识符是程序员自定义的
1、 命名规则:只能由26个英文字母的大小写、10个阿拉伯数字0-9、下划线
严格区分大小写 比如:test 和Test是两个不同的标识符
不能以数字开头
不能使用关键字作为标识符
2、命名规范:尽量起个有意义的名称
如果标识符中含有多个单词,可以使用驼峰标识(除开第一个单词,后面每个单词的首字母都大写)、可以使用帕斯卡命名法、或者使用下划线“_”来连接
(九)、注释
(十)、数据
(十二)、变量的内存分析