本文共 1438 字,大约阅读时间需要 4 分钟。
1、C语言技术模型分层:
其中,接口的封装和设计尤为重要!2、着重需要培养的能力
(1)接口的封装和设计(业务模型的抽象、功能抽象和封装) ———重中之重!
a.接口api的使用能力;
b.接口api的查找能力(快速上手);
c.接口api的实现能力;
// SOCKETCLIENT_H,一个简单信息系统的封装接口#ifndef _SOCKETCLIENT_H#endif _SOCKETCLIENT_H#ifdef __cplusplus extern "C" {#endif//第一套api函数//socket客户端环境初始化int socketclient_init(void **handle); //socket客户端报文发送int socketclient_send(void *handle, unsigned char *buf, int buflen); //socket客户端报文接受int socketclient_recv(void *handle, unsigned char *buf, int *buflen); //socket客户端环境释放int socketclient_destory(void *handle);//第二套api函数//socket客户端环境初始化int socketclient_init2(void **handle); //socket客户端报文发送int socketclient_send2(void *handle, unsigned char *buf, int buflen);//socket客户端报文接受int socketclient_recv2(void *handle, unsigned char **buf, int *buflen);int socketclient_Free(unsigned char **buf); //add//socket客户端环境释放int socketclient_destory2(void **handle);//技术点分析://1级指针 //2级指针//void **handle类型封装的概念、 业务模型的封装的概念#ifdef __cplusplus}#endif#endif
(2)建立正确程序运行内存布局图(印象图)———深刻理解指针的关键!
a.内存四区模型图 ;
b.函数调用模型图 ;
4、C/C++学习特点:学习、理解、应用(动手)、做项目
5、内存四区专题(1)数据类型可理解为创建变量的模子——是固定内存大小的别名。
数据类型的作用:编译器预算对象(变量)分配的内存空间大小。 可以给已存在的数据类型起别名typedef。 既能读又能写的内存对象,称为变量;若一旦初始化后不能修改的对象则称为常量。 变量:1、对内存,可读可写;2、通过变量往内存读写数据;3、不是向变量读写数据,而是向变量所代表的内存空间中写数据;(2)内存四区的建立流程
流程说明:1、操作系统把物理硬盘代码load到内存2、操作系统把c代码分成四个区3、操作系统找到main函数入口执行
(3)内存四区各区元素分析
指针指向谁,就把谁的地址赋给指针;
指针变量 和 指针所指向的内存空间 是两个不同的概念;
理解指针的关键——理解内存块!没有内存哪来的指针!要清楚的知道内存来自何方(哪个区),何时消失,消失往哪里!
(4)函数调用模型