电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > DOCX文档下载
分享到微信 分享到微博 分享到QQ空间

传智播客_c提高讲义(扫地僧)

  • 资源ID:107686123       资源大小:2.11MB        全文页数:79页
  • 资源格式: DOCX        下载积分:20金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要20金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

传智播客_c提高讲义(扫地僧)

轻松入门 实战应用 传智播客C+学院 就业班第一阶段C提高课程传智播客C提高讲义传智扫地僧 1程序内存模型1.1就业班引言1.1.1问题引出企业需要能干活的人 Ø C学到什么程度可以找工作? Ø 对于C/C+初级开发者,怎么达到企业的用人标准Ø 就业问题 问:老师,有没有一个框框?有没有一个标准啊?我们学什么哪?C工程开发需要什么(培养什么能力) 成熟的、商业化的信息系统在分区、分层 信息系统的技术模型在分层 找出对我们初学者最近的那一层(哪些能力是你入行前,必须要掌握的)C项目开发的套路(一套接口) Ø /socket_client pool api 设计与实现Ø int sckClient_poolinit(void *handle);Ø int sckClient_getConnet(void *handle, void *hConnect);Ø int sckClient_sendData(void *hConnect, unsigned char *data, int dataLen);Ø int sckClient_getData(void *hConnect, unsigned char *data, int *dataLen);Ø int sckClient_getData_Free(void *hConnect, unsigned char *data);Ø int sckClient_putConnet(void *handle, void *hConnect);Ø int sckClient_pooldestory(void *handle);总结:寻找到学习的标准 培养两种能力Ø 接口的封装和设计(功能抽象和封装) Ø 接口api的使用能力Ø 接口api的查找能力(快速上手)Ø 接口api的实现能力Ø 建立正确程序运行内存布局图(印象图)Ø 内存四区模型图 Ø 函数调用模型图 1.1.2总体课程安排课程大纲 Ø C提高Ø C+Ø 数据结构Ø 总体时间1个月实用专题Ø 总:轻松入门 实战应用Ø 形式1:专题的形式录制 话题集中 便于初学者学习Ø 形式2:知识点分段录制、细致讲解,从根本上提高初学者水平Ø 项目开发中的重要点做剖析Ø 指针铁律1 2 3 4 5 6 7 8 9 10=企业用人标准 1.1.3学员要求Ø 资料,时间空间管理Ø 工作经验,记录和积累Ø 临界点Ø 事物认知规律Ø 挑战 *p,*p, *p Ø 提高课堂效率Ø 课堂例子,当堂运行。Ø 录制视频说明(不来,看视频)Ø C/C+学习特点Ø Java:学习、应用、做项目Ø C:学习、理解、应用、做项目Ø 多动手Ø 不动手,永远学不会Ø 关键点、关键时候,进行强化训练和考试 1.1.4小结Ø 建立信心 Ø 接口的封装和设计Ø 指针教学,多年实践检验 Ø 心态放轻松了Ø 分析有效时间Ø 尊重事物认知规律、给自己一次机会1.2学员听课的标准C语言学到什么程度,就可以听懂传智播客就业班第一阶段的课程了。有没有一个标准?Ø 选择法或者冒泡法排序Ø 在一个函数内排序Ø 通过函数调用的方式排序Ø 数组做函数参数的技术盲点和推演 1.3内存四区专题讲座1.3.1数据类型本质分析数据类型概念Ø “类型”是对数据的抽象 Ø 类型相同的数据有相同的表示形式、存储格式以及相关的操作 Ø 程序中使用的所有数据都必定属于某一种数据类型 数据类型的本质思考Ø 思考数据类型和内存有关系吗?Ø C/C+为什么会引入数据类型?数据类型的本质 Ø 数据类型可理解为创建变量的模具(模子);是固定内存大小的别名。Ø 数据类型的作用:编译器预算对象(变量)分配的内存空间大小Ø 程序举例,如何求数据类型的大小sizeof(int *)Ø 请问:数据类型可以有别名吗?数据类型可以自定义吗?数据类型大小 int main()int a = 10;int b10 ;printf("int a:%d n", sizeof(a);printf("int a:%d n", sizeof(int *);printf("int b:%d n", sizeof(b);printf("int b:%d n", sizeof(b0);printf("int b:%d n", sizeof(*b);printf("hello.n");getchar();return 0; sizeof是操作符,不是函数;sizeof测量的实体大小为编译期间就已确定数据类型别名Ø 数据类型可以理解为固定大小内存块的别名,请问数据类型可以起别名吗?int main()/Teacher t1;printf("Teacher:%d n", sizeof(Teacher);printf("u32:%d n", sizeof(u32);printf("u8:%d n", sizeof(u8);printf("hello.n");getchar();return 0;数据类型的封装Ø 1、void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。Ø 2、用法1:数据类型的封装 int InitHardEnv(void *handle); 典型的如内存操作函数memcpy和memset的函数原型分别为void * memcpy(void *dest, const void *src, size_t len);void * memset ( void * buffer, int c, size_t num ); Ø 3、用法2: void修饰函数返回值和参数,仅表示无。 如果函数没有返回值,那么应该将其声明为void型 如果函数没有参数,应该声明其参数为void int function(void) return 1;Ø 4、void指针的意义 C语言规定只有相同类型的指针才可以相互赋值 void*指针作为左值用于“接收”任意类型的指针 void*指针作为右值赋值给其它指针时需要强制类型转换 int *p1 = NULL; char *p2 = (char *)malloc(sizoeof(char)*20); Ø 5、不存在void类型的变量 C语言没有定义void究竟是多大内存的别名Ø 6、扩展阅读void类型详解.doc数据类型总结与扩展Ø 1、数据类型本质是固定内存大小的别名;是个模具,c语言规定:通过数据类型定义变量。Ø 2、数据类型大小计算(sizeof)Ø 3、可以给已存在的数据类型起别名typedefØ 4、数据类型封装概念(void 万能类型)思考1:C一维数组、二维数组有数据类型吗?int array10。 若有,数组类型又如何表达?又如定义?若没有,也请说明原因。抛砖:数组类型,压死初学者的三座大山1、数组类型2、数组指针3、数组类型和数组指针的关系思考2:C语言中,函数是可以看做一种数据类型吗?a)若是,请说明原因并进一步思考:函数这种数据类型,能再重定义吗?b)若不是,也请说明原因。抛砖:1.3.2变量本质分析变量概念Ø 概念:既能读又能写的内存对象,称为变量;若一旦初始化后不能修改的对象则称为常量。Ø 变量定义形式: 类型 标识符, 标识符, , 标识符 ; Ø 例如:int x ;int wordCut , Radius , Height ; double FlightTime , Mileage , Speed ; 变量本质 1、程序通过变量来申请和命名内存空间 int a = 02、通过变量名访问内存空间(一段连续)内存空间的别名(是一个门牌号) 3、 修改变量有几种方法?1、直接2、间接。内存有地址编号,拿到地址编号也可以修改内存;于是横空出世了!(编程案例)3、内存空间可以再取给别名吗?4、数据类型和变量的关系Ø 通过数据类型定义变量5、总结及思考题1 对内存,可读可写;2通过变量往内存读写数据;3 不是向变量读写数据,而是向变量所代表的内存空间中写数据。问:变量跑哪去了?思考1:变量三要素(名称、大小、作用域),变量的生命周期? 思考2:C+编译器是如何管理函数1,函数2变量之间的关系的?=引出两个重要话题:内存四区模型函数调用模型重要实验:int main333()/2种方法,通过变量直接操作内存/通过内存编号操作内存int i = 0;printf("&i:%dn", &i);*(int *)(1245024) = 10;printf("i:%d", i);printf("hello.n");getchar();return 0;1.3.3程序的内存四区模型内存四区的建立流程流程说明1、操作系统把物理硬盘代码load到内存2、操作系统把c代码分成四个区3、操作系统找到main函数入口执行各区元素分析1.4函数调用模型1.4.1基本原理1.4.2内存四区模型和函数调用模型变量传递分析1、一个主程序有n函数组成,c+编译器会建立有几个堆区?有几个栈区?2、函数嵌套调用时,实参地址传给形参后,C+编译器如何管理变量的生命周期?分析:函数A,调用函数B,通过参数传递的变量(内存空间能用吗?)1.4.3提示学好C语言的关键 1.4.4如何建立正确的程序运行内存布局图Ø 内存四区模型&函数调用模型Ø 函数内元素 Ø 深入理解数据类型和变量“内存”属性Ø 一级指针内存布局图(int *,char*)Ø 二级指针内存布局图(int * char *)Ø 函数间Ø 主调函数分配内存,还是被调用函数分配内存Ø 主调函数如何使用被调用函数分配的内存(技术关键点:指针做函数参数)=学习指针的技术路线图1.5内存四区强化训练01全局区训练Ø char *p1= “abcdefg”;02 堆栈区生命周期训练Ø Char p1= “abcdefg”;Ø 返回基本类型Ø 返回非基本类型03堆栈属性训练Ø 测试heap生长方向Ø 测试stack生长方向Ø Heap、stack生长方向和内存存放方向是两个不同概念Ø 野指针Ø Malloc得到指针释放问题测试Ø free(p)Ø free(p+1),深入理解 1.6作业强化训练1划出内存四区 void ma

注意事项

本文(传智播客_c提高讲义(扫地僧))为本站会员(ji****en)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.