首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 93 毫秒
1.
李广元  唐稚松 《软件学报》2000,11(3):285-292
指针是一种重要的数据类型,使用指针能使程序更加有效和优美.可是指针却以不易驾御而闻名,至今在时序逻辑语言中未见到对它的形式化工作.XYZ/E既是一个时序逻辑系统也是一个程序设计语言,它能表示普通高级语言中几乎所有的重要机制.本文主要讨论在时序逻辑语言XYZ/E中指针的形式化表示问题以及在结构化XYZ/SE程序中指针的验证问题.  相似文献   

2.
指针是C语言中的一个重要概念,也是C语言的一个重要特色。正确而灵活地运用指针,可以有效地表示复杂的数据结构;能动态分配内存:方便地使用字符串;有效而方便地使用数组;在调用函数时能得到多于1个值;能直接处理内存等。然而指针又是非常不安全的设施,错误的理解与使用指针,将使用户  相似文献   

3.
指针是C语言中的一个重要概念,正确熟练地掌握指针的概念和指针的使用就能设计出复杂的数据结构和高效的程序。在此重点论述了指针的概念及其在程序中的应用。  相似文献   

4.
李蓓 《数字社区&智能家居》2009,(11):8712-8713,8716
指针是C语言甲的一个重要概念,正确熟练地掌握指针的概念和指针的使用就能设计出复杂的数据结构和高效的程序。在此重点论述了指针的概念及其在程序中的应用。  相似文献   

5.
C语言指针探讨   总被引:1,自引:0,他引:1  
指针是C语言中的一个重要概念,也是C语言的一个重要特色。正确而灵活地运用指针,可以有效地表示复杂的数据结构;能动态分配内存;能方便地使用字符串;有效而方便地使用数组;在调用函数时能得到多于1个的值;能直接处理内存等。但同时,指针的概念也难以理解,使用比较灵活的特点给程序设计者的学习和应用带来困难。本文结合例题探讨指针问题。一、指针的概念如果在程序中定义了一个变量,在编译时就会给这个变量分配一定长度的内存空间。内存区的每一个内存单元都有一个地址,用来标识内存单元,通过地址对所标识的单元存放数据。给变…  相似文献   

6.
指针是C++语言学习中的重点,也是C++语言学习中的一个难点。透彻的理解和灵活运用指针是每个C++编程者的终级目标。为了让C++编程者透彻的理解和灵活运用指针,该文从指针的级别的角度出发,结合实例剖析指针。在实际的教学中证明,这种方法不仅让学生能深刻理解指针,而且能对指针相关知识融会贯通,学以致用。  相似文献   

7.
指针是C语言中的一个重要的概念,也是C语言的一个重要特色,正确而灵活地运用它可以使程序简洁、紧凑、高效,这对软件设计十分必要.但是指针概念比较复杂,应用也比较灵活且容易出错,学习者较难掌握,是C语言教学的难点,特别是指针与数组结合使学习者理解起来更加困难,本文从概念表示到应用分析由浅入深地讨论了指针数组与指向指针的指针.阐述了学习方法与教学经验.  相似文献   

8.
c语言是一门基础的程序设计语言,在程序设计教学中占有重要的地位。在C语言中,较难理解的就是指针。本文试图通过论述指针的定义、分类、运算以及3中特殊的用途,让大家能较清晰的认识指针的本质。可以预见的是只有深入的掌握的了指针才能真正的掌握了C语言。通过深入的应用指针,C语言必定能够应用于更广泛领域。  相似文献   

9.
赵辉  冯东栋 《福建电脑》2011,27(4):187-188
在C语言程序设计的教学中,指针是公认的一个教学难点。如何让学生透彻的理解指针的概念,能够充分的使用指针带来的灵活性的同时又尽量少犯错误,是C语言教学中的一个重要问题。本文提出对c语言q-有关指针知识的教学方法、理解方式和顺序过程,并将其应用到c语言的教学q-,收到了良好的教学效果。  相似文献   

10.
李姝博 《福建电脑》2013,(12):192-193
C语言是一门基础的程序设计语言,在程序设计教学中占有重要的地位。在C语言中,较难理解的就是指针。本文试图通过论述指针的定义、分类、运算以及三种特殊的用途,让大家能较清晰的认识指针的本质。可以预见的是只有深入的掌握的了指针才能真正的掌握了C语言。通过深入的应用指针,C语言必定能够应用于更广泛领域。  相似文献   

11.
指针是C/C++语言中至关重要的概念,也是软件界备受争议和讨论的热点。提高指针的使用安全性对于软件的安全具有现实意义。指针是内存的直接管理者,指针做为函数参数在程序中传递导致内存不断拥有新的管理者,程序员弄清不同管理者的职责,进而操控指针控制内存,可提高程序的安全性。结合具体实例分析其有效性。  相似文献   

12.
Reasoning about pointer programs is difficult and challenging, while their safety is critical in software engineering. Storeless semantics pioneered by Jonkers provides a method to reason about pointer programs. However, the representation of memory states in Jonkers’ model is costly and redundant. This paper presents a new framework under a more efficient storeless model for automatically verifying properties of pointer programs related to the correct use of dynamically allocated memory such as absence of null dereferences, absence of dangling dereferences, absence of memory leaks, and preservation of structural invariants. The introduced logic-Pointer Logic, is developed to achieve such goals. To demonstrate that Pointer Logic is a useful storeless approach to verification, the Schorr-Waite tree-traversal algorithm which is always considered as a key test for pointer formalizations was verified via our analysis. Moreover, an experimental tool-plcc was implemented to automatically verify a number of non-trivial pointer programs.  相似文献   

13.
Reasoning about pointer programs is difficult and challenging, while their safety is critical in software engineering. Storeless semantics pioneered by Jonkers provides a method to reason about pointer programs. However, the representation of memory states in Jonkers’ model is costly and redundant. This paper presents a new framework under a more efficient storeless model for automatically verifying properties of pointer programs related to the correct use of dynamically allocated memory such as absence of null dereferences, absence of dangling dereferences, absence of memory leaks, and preservation of structural invariants. The introduced logic – Pointer Logic, is developed to achieve such goals. To demonstrate that Pointer Logic is a useful storeless approach to verification, the Schorr-Waite tree-traversal algorithm which is always considered as a key test for pointer formalizations was verified via our analysis. Moreover, an experimental tool – plcc was implemented to automatically verify a number of non-trivial pointer programs.  相似文献   

14.
C语言作为一种“高级的低级“语言,成为嵌入式系统开发的最佳选择.在嵌入式程序设计中灵活地使用C指针,可以使程序简洁、紧凑、高效,会达到很好的效果.文章主要从数据指针、动态申请内存指针引用数组元素、函数指针几个方面阐述了C指针在嵌入式编程中的应用.  相似文献   

15.
付腾桂  王健 《计算机工程》2009,35(13):61-62,6
针对Windows CE流接171驱动程序,通过嵌入指针访问应用程序内存区域时出错的案例,分析错误产生的原因,阐述一些有关Windows CE内存访问的重要概念,包括指针参数、嵌入指针、同步访问、访问检查和内存整理,从而提出对嵌入指针进行内存整理的解决方法。结果证明该方法可以有效地解决异步内存访问出错的问题。  相似文献   

16.
基于指针映射集的动态内存故障测试方法研究   总被引:2,自引:0,他引:2  
动态内存故障在使用指针的程序中是普遍存在的,采用动态测试方法进行测试难以准确定位故障源.而现有的静态分析方法主要存在漏报和误报过多的情况.针对这些问题,提出了指针映射代数系统的概念,全面地反映了指针与内存之间的映射关系,并给出了面向不同故障的指针映射集的构造规则,以此为基础建立了动态内存故障模型.通过指针映射集和故障模型,可以自动检测内存释放异常、内存泄露和空指针引用等动态内存故障,提高了测试效率.在分析过程中,还综合应用了控制流图和路径条件,提高了测试结果的精度.实验结果表明,该方法能够有效检测动态内存故障,而且出于规则定义较为全面,漏报和误报率也较低.  相似文献   

17.
C++对象的持久化中的问题和解决方案   总被引:1,自引:0,他引:1       下载免费PDF全文
陶伟  麦中凡 《软件学报》1996,7(2):73-82
多媒体智能数据库系统MIDS(multimediaintelligentdatabasesystem)是一个对象数据库管理系统.它的数据库编程语言是P++,P++个语言是一种基于C++的语言.作者在P++的实现过程中遇到了以下问题:首先,C++的指针有二义性,它无法在语义上区分成员指针和引用指针,以及易失性指针和持久性指针,从而给事务管理中的对象加锁及其它方面带来问题.其次,具有虚拟函数或虚拟基类的对象中含有指向内存中的指针,而这些指针不是由程序员定义的.如果C+个对象被持久化,这些指针在不同的程序调用中有可能无效.最后,如果作者用文件系统调用来存储对象,那么必须要设计复杂的Cache系统和做大量对象的格式转化工作,这需要大量的空间和时间,所以他们采用了另外的一种方法──基于虚拟内存空间映射的存储方案.  相似文献   

18.
Linux平台下基于源代码插装的动态内存检测   总被引:1,自引:0,他引:1  
在C/C++语言程序中.指针的使用使代码灵活、简便.但所带来的类似内存泄漏、内存写溢出等的内存使用的错误却很难分析和消除.针对这些容易出现的内存使用错误.提出了Linux平台下一种基于源文件信息提取和源代码插装的动态内存检测方法,设计实现了一个动态内存检测模块DDMEM.可以检测源代码的内存泄漏、内存写溢出、释放野指针和内存管理函数的不匹配等问题.给出了写溢出错误的一个实例检测,以验证方法的有效性.  相似文献   

19.
基于底层阐述了C语言中指针的原理与实现,分析利用指针进行动态内存分配的机制,并总结了使用指针时常见的问题。  相似文献   

20.
指针是C语言的精华所在,正确使用指针能使程序简洁高效,能避免内存错误和程序异常,保证程序的正确性和可移植性。针对指针在编程过程中可能出现的错误,阐述了C编译器对数据进行内存分配的策略,通过具体的实例进行分析,并给出解决方法。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号