导读:本文包含了指针程序论文开题报告文献综述及选题提纲参考文献,主要关键词:指针,C语言,内存地址,数组
指针程序论文文献综述
马振婴[1](2019)在《“C语言程序设计”课程指针的教学设计》一文中研究指出《C语言程序设计》课程的指针概念抽象晦涩,且容易混淆。在教学中引入游戏、动画加强课程的趣味性,并采用渐进式、对比式和启发式方法,提高学生的主动参与性。关卡式实验设计和程序改错练习巩固了学生的编程能力。(本文来源于《科教导刊(上旬刊)》期刊2019年03期)
傅玉,邓艺,孙晓山,程亮,张阳[2](2018)在《面向二进制程序的空指针解引用错误的检测方法》一文中研究指出空指针解引用是C/C++程序中常见的一类程序错误,它可让攻击者旁路安全机制或窥探操作系统敏感信息,一直是计算机安全领域的重要研究课题之一.目前已有很多(自动)分析工具对其进行检测,然而它们都在源代码层面上进行检测.大量的商业软件不公开源代码,因此基于源代码的工具无法对这类软件中空指针解引用进行检测.此外,一些空指针解引用无法在源代码层面检测,因为这些缺陷由编译选项和编译优化不当引入.因此进行基于二进制的空指针解引用检测非常必要.基于二进制的空指针解引用检测的一个优势是可以包含库函数的代码,而基于源代码的分析通常采用人工构造的库函数摘要,从而影响检测的准确性和召回率.该文首次提出并实现了面向二进制程序的空指针解引用静态检测工具NPtrChecker,直接接受二进制程序进行分析,并给出代码中出现空指针的来源和解引用的位置以及对应的路径条件.在二进制上进行空指针解引用检测的一个重要难点是二进制程序中缺少指针类型、结构体类型等相关数据类型信息.如果缺乏这类信息,会导致分析结果的准确率大大降低.但是从二进制中恢复类型、数据结构本身是非常困难的问题.针对上述问题,我们提出了一种内存模型,区分来自同一数据结构的不同域的引用,实现了针对空指针解引用检测的域敏感指针分析.为了进一步提高分析的准确率,文章在此基础上设计实现了一套基于函数摘要的上下文敏感的数据流分析算法.此外,工具采用最弱前置条件对数据流分析结果进行验证,检查从指针来源到解引用点的路径条件是否可以被满足,以降低误报率.我们应用NPtrChecker分析了SPEC2000中的11个程序,总共报告了37个可疑空指针解引用,通过人工确认,其中22个是真实的程序错误.相对于Saturn报告的92个,仅13个为真;LUKE报告的3个,2个为真,而文中的工具检测出了更多的空指针解引用错误,同时保持了较低的误报率.(本文来源于《计算机学报》期刊2018年03期)
李丽萍[3](2016)在《C语言程序设计中指针教学方法的研究》一文中研究指出详细介绍了如何通过事例向学生讲解引入指针的原因和目的。通过大家都熟悉的网上购物流程,对指针概念,指针变量赋值方式及通过指针变量给所指向的变量赋值进行详细介绍。采用案例教学方法,让枯燥、深奥的知识变得生动、易懂。(本文来源于《辽宁工业大学学报(社会科学版)》期刊2016年02期)
段钊,田聪,段振华[4](2016)在《基于CEGAR的C程序空指针解引用检测》一文中研究指出随着计算机软件规模和复杂度的日益增长,软件系统的可靠性和安全性倍受关注.空指针解引用是程序中常见的一类错误.提出了一种基于反例制导抽象精化CEGAR的C程序空指针解引用检测方法.该方法首先使用线性时序逻辑描述空指针解引用问题,然后通过抽象精化的方法检测待测程序中是否含有空指针解引用错误.为了达到完全自动验证的目标,同时针对空指针解引用问题,研究了该类性质的时序逻辑表达方法,并自动从程序中针对所有的指针变量,形成相应的时序逻辑公式.实验结果表明,所提出的方法在大规模C程序的空指针解引用检测方面有着重要的实际应用价值.(本文来源于《计算机研究与发展》期刊2016年01期)
韦纯福,李波[5](2015)在《C语言程序设计中的指针教学研究》一文中研究指出指针是C语言程序设计的重要数据类型,亦是C语言的精华部分。但是,由于指针概念复杂,使用灵活,在实际的教学过程中学生常常感到难以理解。文章拟从指针的基本概念入手,分析函数指针、指针函数、数组指针及指针数组的区别与联系,通过类比分析方法阐明该部分内容,以期能够帮助学生深入理解指针原理及其应用。(本文来源于《大众科技》期刊2015年07期)
尹帮虎,陈立前,王戟[6](2015)在《基于指向与数值抽象的带指针算术程序的分析方法》一文中研究指出带指针算术的程序往往包含数组越界、缓冲区溢出等运行时错误。单纯的指针分析技术和数值分析技术都无法有效处理指针算术。为了将指针分析与数值分析相结合,首先提出一种新的指针内存模型,然后基于该模型设计了一个刻画指针指向关系和指针偏移量的抽象域。最后在抽象解释框架下,设计并实现了一个面向带指针算术C程序的静态分析工具原型PAA。实验结果表明,PAA能够有效地分析指针程序的指向关系和数值性质,并能够在效率和精度间取得合理的权衡。(本文来源于《计算机科学》期刊2015年07期)
刘国琴[7](2014)在《C语言程序设计中指针与数组的关系研究》一文中研究指出C语言是计算机程序中最为常见的基础语言,具有较强的专业性,但是使用方便,易于学习。同时还兼具了丰富的表述功能,可以进行复杂的程序编写,并且支持多种平台,有着较好的可移植性。其中数组和指针是C语言学习中的一个重点。如何处理指针与数组之间的关系,使其更为简洁明了,是所有研究C语言程序设计者的共同目标。(本文来源于《信息与电脑(理论版)》期刊2014年12期)
段钊[8](2014)在《基于CEGAR的C程序空指针解引用检测》一文中研究指出随着计算机硬件技术的发展,计算机软件系统的复杂性越来越高,所涉及的代码量越来越大,同时程序中的错误和问题隐患也越来越多。因此,如何提高软件系统的可靠性和安全性已成为计算机软件领域的一个紧迫需求。软件模型检测技术是提高程序可靠性和安全性的重要途径。该技术可以自动化地验证程序是否可以满足一些关键性质。C语言是目前软件领域最为广泛使用的编程语言之一。它的语法规范比较灵活,尤其是对指针的使用,稍微不注意,就会导致程序崩溃。在C程序中,对指针的不正确使用,会带来如内存泄露,指针未初始化、多次释放,以及空指针解引用等问题。本文研究基于CEGAR技术的C程序空指针解引用的检测算法。首先,实现了基于CEGAR的C程序PPTL模型检测算法。在此基础上,通过PPTL公式来描述空指针解引用的特征,进一步检测C程序中是否存在空指针解引用的问题。为了提高验证的自动化水平,本文通过对C源代码进行扫描,对所涉及到的指针自动产生待验证的PPTL性质,避免了手动在C程序中加入断言所带来的麻烦。在以上方法的基础上,实现了基于CEGAR的C程序PPTL模型检测检测工具:PPTLChecker。该工具可以支持PPTL公式描述的程序性质的验证,实现了对程序中空指针解引用问题的自动化检测功能。实验结果表明,PPTLChecker在C程序空指针解引用检测中有着实际的应用价值。(本文来源于《西安电子科技大学》期刊2014-11-15)
尹帮虎[9](2014)在《基于抽象解释的带指针算术程序的分析方法》一文中研究指出指针作为C语言的基本语法元素,使用时具有高度的灵活性,这种灵活性虽然为C语言程序的编写带来了极大的便利,却同时也使得指针使用不当成为引发空指针解引用、数组越界等非法内存访问的源泉之一。指针算术是出现在嵌入式程序中常见的一类指针用法。研究带指针算术程序的分析对提高航空航天等安全攸关领域的软件可信性具有重大意义。抽象解释为静态分析提供了一个通用理论框架。基于抽象解释的程序数值性质分析能有效地分析程序变量的值范围信息。指针分析技术能够有效分析程序中指针变量的指向信息及别名信息。但是单纯的数值分析技术和指针分析技术都无法有效处理指针算术。为此,本文在抽象解释框架下提出了将数值分析与指向分析相结合的面向带指针算术程序的分析方法。本文首先设计了一个精确刻画指针变量指向信息的内存模型,提出了相应的用于指针算术分析的抽象内存模型。然后基于该抽象内存模型设计并实现了一个针对指向关系分析的指向抽象域。在此基础上,把数值分析和指向分析结合起来以通过静态分析获取带指针算术程序的数值不变式和指向不变式,并基于这些不变式结果实现了带指针算术程序运行时错误的查找。本文利用开源的数值抽象域库Apron和本文设计的指向抽象域,基于抽象解释实现了面向带指针算术程序的静态分析工具原型。该工具主要分为四个部分:前端预处理模块、抽象域库模块、不动点求解模块以及报警模块。本文实现的工具原型已经支持部分带指针算术C程序的有效分析,并在其上开展了部分实验。实现结果表明,该工具能够有效地分析指针程序的指向关系和数值性质,并能够在效率和精度间取得合理的权衡。(本文来源于《国防科学技术大学》期刊2014-11-01)
龚松显,董锐,刘跃宣[10](2014)在《用函数指针替代Switch/Case语句的程序设计方法》一文中研究指出单片机程序中,当Switch/Case语句分支较多、处理代码较长、处理情况较为复杂时,逻辑修改和程序调试均存在一定的困难。针对该问题,本文给出了使用函数指针替代Switch/Case语句的实现思路以及相对应的代码模型,为其他类似的代码实现提供参考。(本文来源于《单片机与嵌入式系统应用》期刊2014年09期)
指针程序论文开题报告
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
空指针解引用是C/C++程序中常见的一类程序错误,它可让攻击者旁路安全机制或窥探操作系统敏感信息,一直是计算机安全领域的重要研究课题之一.目前已有很多(自动)分析工具对其进行检测,然而它们都在源代码层面上进行检测.大量的商业软件不公开源代码,因此基于源代码的工具无法对这类软件中空指针解引用进行检测.此外,一些空指针解引用无法在源代码层面检测,因为这些缺陷由编译选项和编译优化不当引入.因此进行基于二进制的空指针解引用检测非常必要.基于二进制的空指针解引用检测的一个优势是可以包含库函数的代码,而基于源代码的分析通常采用人工构造的库函数摘要,从而影响检测的准确性和召回率.该文首次提出并实现了面向二进制程序的空指针解引用静态检测工具NPtrChecker,直接接受二进制程序进行分析,并给出代码中出现空指针的来源和解引用的位置以及对应的路径条件.在二进制上进行空指针解引用检测的一个重要难点是二进制程序中缺少指针类型、结构体类型等相关数据类型信息.如果缺乏这类信息,会导致分析结果的准确率大大降低.但是从二进制中恢复类型、数据结构本身是非常困难的问题.针对上述问题,我们提出了一种内存模型,区分来自同一数据结构的不同域的引用,实现了针对空指针解引用检测的域敏感指针分析.为了进一步提高分析的准确率,文章在此基础上设计实现了一套基于函数摘要的上下文敏感的数据流分析算法.此外,工具采用最弱前置条件对数据流分析结果进行验证,检查从指针来源到解引用点的路径条件是否可以被满足,以降低误报率.我们应用NPtrChecker分析了SPEC2000中的11个程序,总共报告了37个可疑空指针解引用,通过人工确认,其中22个是真实的程序错误.相对于Saturn报告的92个,仅13个为真;LUKE报告的3个,2个为真,而文中的工具检测出了更多的空指针解引用错误,同时保持了较低的误报率.
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
指针程序论文参考文献
[1].马振婴.“C语言程序设计”课程指针的教学设计[J].科教导刊(上旬刊).2019
[2].傅玉,邓艺,孙晓山,程亮,张阳.面向二进制程序的空指针解引用错误的检测方法[J].计算机学报.2018
[3].李丽萍.C语言程序设计中指针教学方法的研究[J].辽宁工业大学学报(社会科学版).2016
[4].段钊,田聪,段振华.基于CEGAR的C程序空指针解引用检测[J].计算机研究与发展.2016
[5].韦纯福,李波.C语言程序设计中的指针教学研究[J].大众科技.2015
[6].尹帮虎,陈立前,王戟.基于指向与数值抽象的带指针算术程序的分析方法[J].计算机科学.2015
[7].刘国琴.C语言程序设计中指针与数组的关系研究[J].信息与电脑(理论版).2014
[8].段钊.基于CEGAR的C程序空指针解引用检测[D].西安电子科技大学.2014
[9].尹帮虎.基于抽象解释的带指针算术程序的分析方法[D].国防科学技术大学.2014
[10].龚松显,董锐,刘跃宣.用函数指针替代Switch/Case语句的程序设计方法[J].单片机与嵌入式系统应用.2014