C语言学习心得报告
更新时间:2024-05-09 15:41:01 阅读量: 综合文库 文档下载
- c语言学习网站推荐度:
- 相关推荐
C语言学习心得报告
看了一段时间的《C和指针》,这样看的效果不是很好,看着书本当时是懂了,有点恍然大悟的感觉,但是发现并不能真正的把理解的内容加入到自己程序当中,不能很好的去运用它,所以对于C语言我认为理论加实践,是学习C语言的最好方法,看书并不能完全理解书中的内容,也较容易遗忘,学习效率比较低,所以现在学习《数据结构》,在看书的同时,会在Microsoft Visual C++ 6.0软件上实践,严蔚敏写的《数据结构》这本书,比较经典但是这本书是伪算法,并不能直接在计算机上运行,对于初学者上机实践比较困难,另外说一下,我认为学习应该是在模仿中理解,在模仿中创新,所以我选择结合高一凡写的书《数据结构算法实现及解析》,这本书严蔚敏写的伪算法全部用程序实现了,给我上机实践提供了很大的帮助,貌似说到数据结构了,呵呵,回到正题,下面继续说说C语言。
指针是C语言的精华,也是C语言的难点,它就像一把双刃剑,锋利无比但运用的不好也会给自己带来危害,后果比较严重,所以重点来说说指针。
很多初学者弄不清指针和数组到底有什么样的关系,为避免混淆不清,下面总结一下指针和数组的特性。指针是保存数据的地址,任何存入指针变量的数据都会被当作地址来处理,指针变量本身的地址由编译器另外存储,存储在哪里,我们并不知道,间接访问数据,首先取得指针变量的内容,把它作为地址,然后从这个地址读或写入数据。指针可以用间接访问操作符(*)访问,也可以用以下标的形式访问,指针一般用于动态数据结构。数组是用来保存数据的,数组名代表的是数组首元素的地址而不是数组的首地址,所以数组p与&p是有区别的,虽然内容相同,但意义却不同,&p才是整个数组的首地址,数组名是整个数组的名字,数组内每个元素并没有名字,不能把数组当一个整体来进行读写操作。当然数组在初始化时也有例外,如int p[]=“12345”是合法的。数组可以以指针的形式访问如*(p+i);也可以以下标的形式访问p[i],但其本质都是p所代表的数组首元素的地址加上i*sizeof(类型)个字节作为数据的真正地址来进行访问的。数组通常用于存储固定数目且数据类型相同的元素。刚开始的时候我
有点分不清指针数组和数组指针,现在也总结一下,指针数组,首先它是一个数组,数组的每个元素都是指针,可以理解为“存储指针的数组”的简称,数组指针,首先它是一个指针,它指向一个数组,在32位系统下永远只占4个字节,至于它指向的数组有多少个字节,并不知道,可以理解为“指向数组的指针”。举个例子,int *p1[10]与int (*p2) [10], 要理解这个问题,首先要清楚操作符的优先级,“[]” 的优先级比“*” 的优先级高,所以首先p1与“[10]”结合构成一个数组p1[10],int *为修饰数组的内容,所以数组元素是指向int类型的指针,所以这个是指针数组,“()” 的优先级比“[]” 的优先级高,“*”与p2结合构成一个指针变量,int修饰数组的内容,即数组的每个元素,数组这里并没有名字,是个匿名数组,现在清楚了p2是一个指针,它指向一个包含10个int类型数据的数组,即为数组指针。下面再说说内存管理,内存分为三个部分:静态区、堆、栈。其实堆栈就是栈,而不是堆。静态区是保存自动全局变量和static变量。静态区的内容在整个程序的生命周期内都存在,由编译器在编译的时候分配。堆是由malloc系统函数分配内存的。其生命周期由free和delete决定。栈保存局部变量。栈上的内容只在函数范围内存在,当函数运行结束,这些内容也会自动被销毁。再说说有关内存需要注意的地方,定义了指针变量,在使用之前一定要初始化使它指向一块合法的内存,不管什么时候,我们在使用指针之前一定要确保指针是有效的。使用malloc系列函数分配内存,使用完之后应及时释放内存,以防止内存泄露。
最后总结的说一下学习C语言的方法就是编程编程再编程,理论学习与上机操作同时进行,另外在编程序的过程中要养成良好的编程习惯。
正在阅读:
C语言学习心得报告05-09
新题型大学英语四级听力全真模拟试题听力原文 (17)07-17
党课讲稿:坚守初心 担当使命02-23
国经案例分析11-05
矿用防爆对旋式轴流通风机性能分析与对策07-24
汽车发光二极管项目可行性研究报告评审方案设计(2013年发改委标04-25
医院科教述职报告2013 (1)03-20
北林历史1952-2002 - 图文07-11
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 语言学习
- 心得
- 报告
- 《穷人》 县级一等奖说课
- 成绵乐铁路客运专线站场工程监理实施细则
- 600MW机组凝结水系统
- 七年级地理知识竞赛题 - 图文
- 2013清华大学接收外校推荐免试攻读博士(硕士)学位研究生拟预录取
- 江开文学概论第一次形成性作业
- orCAD PSpice电路特性分析实习报告
- 《旅游德语》课程教学大纲(1)
- origin菜单栏中文解释
- 火灾自动报警系统设计
- (完整版)基于单片机的语音控制开关设计毕业设计
- 15春西交《运筹学》在线作业 答案
- 《民用飞机结构腐蚀与防护》
- 中国银行营业网点服务规范2010版
- 在全市农村饮水安全工作会上的讲话
- 实验五 细菌鉴定中常见的生理生化反应
- 中国水晶手机座行业发展研究报告 - 图文
- 幼儿自主性
- 人力资源战略与规划作业及答案
- 《植物细胞》(第二课时)教学设计