这篇笔记,是自己学习的学习大杂烩,主要用于记录,方便自己查找,其中有些,现在自己看起来都有点好笑,因为错的太低级了,不过这也是成长,后面会梳理好的。
文字记录:
##1.c 语言的发展历史、课程思路
1960 --原型A语言 ==》ALGOL 语言
1963 CPL语言
1967 BCPL语言
1970 B语言
1973 C语言
@@1.学习建议:
@@@1. 概念的正确性
@@@2. 动手能力
@@@3. 阅读优秀的程序段
@@@4.大量练习,面试题
@@2.课程思路
1.c语言的相关概念
2.c语言的数据类型,运算符,表达式
3.输入输出专题
4.流程控制语句
5. 数组(集合,map)
6.指针 7.函数
8.构造类型(类的种类)
9.动态内存的管理
10.工具的使用(调试工具:gdb(调试技巧),工程管理器:make)
11.常用的一些库函数
@@3.操作课程环境
64位的redhat6,vim,gcc(make)
##2.c语言 入口结构和 环境搭建
@@1. 入口结构:
#include <stdio.h>
#include <stdlib.h>
int main(){
printf("Hello world ! \n");
exit(0);
}
注意:如果无参数传入用 main(),有参数传入用(int argc,char **argv)
@@2. c语言文件运行执行的过程
C文件 (hello.c)===> 预处理
===》编译 ====》汇编====》链接===》可执行文件
-------------整个过程
编译工具gcc :gcc 命令
gcc -v 版本查看
gcc -E 编译c文件
gcc -S 预处理i 文件
gcc -c 汇编s文件
gcc 汇编o文件 ==》 可执行文件
gcc hello.c -Wall 查看c语言文件的所有警告
@@3. vi 的快捷 方式和 vim配置脚本
@@4. a哈c语言 环境
##3.编程的重要性
###3.1 编写c语言的一些思路和要求
@@1.头文件正确引入的重要性
@@2. 以函数为单位来进行程序运行(只能有一个main,复杂分小段)
@@3. 声明部分 +实现部分(变量先定义 ,后使用)
@@4. 结束语句 :return 0; exit 0; 返回给父进程看的,0为 ture
printf 有返回值 ,echo $? 查看
函数不执行:
@@ #if 0
func(){
}
@@ #endif
@@ 5.多用空格空行
@@6.添加注释
###3.2 运用算法的能力:算法,解决问题的方法。
流程图,NS图 : 先写出解决问题的几步,然后进行一步一步实现。
FSM 有限状态机。
###3.3 区分 程序和进程的概念
###3.4 防止写越界
防止内存泄露,谁打开谁就关闭,谁申请谁就释放。
##4.c语言的数据类型
---------------4.1 图基本类型
---------------4.1 图基本类型基本信息
@@1.进制的转换 和 存储的基本信息
@@2.变量 和常量 的概念
概念是已认识一个东西和 一个事物的基本准则和度量单位。
--------------4.2 变量 和常量 的概念
##7.输入和输出专题
输出:
printf("%[修饰符] 格式字符",输出表项)
int main(){
char ch=65;
printf("%c\n",ch);
exit(0);
}
输出 修饰符 ------------ 图
printf的变参函数,方法重载。 \n 刷新缓存区
输入:scanf
查看 c手册: man 3 查看函数
##8. c语言流程控制
----------------流程控制 讲解分析
c控制语句:
https://blog.csdn.net/lm_0921_miaodameng/article/details/81011875
各种分支语句使用:
##9.数组的理解
数组: 一维数组 ,多维数组 ,字符串数组
sizeof() 数组长度,strlen( str1 ) 字符串长度
字符数组:http://c.biancheng.net/view/355.html
scanf要放循环语句中,一定要进行结果输入判断。
------------字符 和字符串 的输入和输出 图
##10.指针的概念
变量和地址 : 变量不用解释,指的是一个盒子的名字
地址,是该盒子的存储位置。
指针变量和 指针, 这一块内存的地址名称 ,而指针是这块内存地址中的一个地址。
面向对象的三属性
(c语言是面向过程的语言,但是他可以自己封装实现面向对象。)
c语言和c++,c+,oc的区别
WINDOWS是80%是用C++编写,其余部分用 c语言和 汇编语言编写。
Linux、UNIX 是 汇编和c语言为主
----------------------------待完善