首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 140 毫秒
1.
C语言中的++运算符是一种特殊的运算符,其特殊性在于一个运算符包含两个操作,不同的编译器对这两个操作在复合表达式中的处理机制不同,而同一个编译器对其在程序中的不同位置也有不同的处理。教材中仅仅对++运算符作了最简单的介绍,并没有对++运算的左连接和右连接同时参与运算时的处理规则作介绍,本文对++运算在不同情况下的求解进行了深入研究,得出对++运算符的运算要根据一定的程序环境和编译器环境而定。  相似文献   

2.
目前,最主流的开发语言之一就是C++,越来越多的工具都使用C++语言来开发了。因为C++具有高效等特性,所以得到了很广泛的运用。但是不可避免的,在开发软件程序方面,它也存在着一些缺陷。因此,基于开源编译器GCC的C++静态分析器就被开发出来了,可以审查代码,发现缺陷,保证代码的安全和可靠。本文通过对C++静态分析器的C++的语言的缺陷、检查规则以及编译器的内容进行阐述,综合讲解了其开发与应用。  相似文献   

3.
事务存储并行程序编程接口研究   总被引:1,自引:0,他引:1       下载免费PDF全文
事务存储并行程序编程接口按照实现方式和实现层次的不同,分为三种形式:库函数接口、语言扩展和编译器指导命令。本文以RSTM、英特尔C/C++软件事务存储编译器原型和OpenTM为例,讨论了三种事务存储编程接口的特点,对OpenTM编程接口进行了扩展和完善,并对未来编程接口的发展进行了展望。  相似文献   

4.
本文通过介绍PRO*C/C++预编译器以及这个编译器在VC开发环境中的配置方法,探讨了运用嵌入式SQL语言在开发ORACLE数据库应用程序的研究。  相似文献   

5.
本文利用MATLAB提供的C/C++编译器,实现了MATLAB与VisualC++语言的接口,将m文件编译成脱离MATLAB运行的可执行应用程序.  相似文献   

6.
本文利用MATLAB提供的C/C++编译器,实现了MATLAB与VisualC++语言的接口,将m文件编译成脱离MATLAB运行的可执行应用程序.  相似文献   

7.
本文介绍了Memory Pool的历史、设计思想及其在C++中的实现。读者基础:有一定程度的C++编程经验本文适用工具:GNU C++编译器本文关于SGI STL之剖析,部分已载于《STL源码剖析》第二章;崭新内容包括SGI STL区块卸除(归还)动作分析、缺点与补强之道、无痛应用、三种编译器之区块配置效能比较。  相似文献   

8.
一、用标准C++教学与编程计算机科学与应用的迅猛发展,直接推动了《C++程序设计教程》一书的再版。由于C++语言作为有效的开发工具在计算机界起着重要的作用,因而在国内得到了越来越多的应用,许多大型的计算机和软件开发公司要求程序员必须能够进行C++编程,这一趋势导致了越来越多的学校开设C++程序设计课程。1998年ISO/IEEE所制定的C++标准如今已经被各大C++编译器制造商全盘采用,2002年又修订了C++新的国际标准,国内的C++教学也逐步意识到用标准C++进行教学的重要意义,这也意味着C++正以一日千里之势在向前发展。这些年中,发现用…  相似文献   

9.
侯捷 《程序员》2002,(10):90-96
本文介绍了Memory Pool的历史,设计思想及其在C++中的实现。读者基础:有一定程度的C++编程经验本文适用工具:CNUC++编译器本文关于SGI STL之剖析,部分已载于《STL源码剖析》第二章;崭新内容包括SGI STL区块卸除(归还)动作分析、缺点与补强之道、无痛应用、三种编译器之区块配置效能比较。  相似文献   

10.
详细论述了VC++编译器中C++异常处理机制实现的关键技术,如静态异常表、异常处理链表、异常处理器算法.  相似文献   

11.
The efficiency of object-oriented programs has become a point of great interest. One necessary factor for program efficiency is the optimization techniques involved. This paper presents the performance of several variations of a given C++ program and compares them with a version that uses no object-oriented features. Our result indicates that some object-oriented features in C++ are not well optimized in current C++ compilers. We thus discuss some code optimization techniques that can improve the efficiency based on the given C++ program.  相似文献   

12.
This paper describes the design and implementation of an optimizing compiler that automatically generates profile information to assist classic code optimizations. This compiler contains two new components, an execution profiler and a profile-based code optimizer, which are not commonly found in traditional optimizing compilers. The execution profiler inserts probes into the input program, executes the input program for several inputs, accumulates profile information and supplies this information to the optimizer. The profile-based code optimizer uses the profile information to expose new optimization opportunities that are not visible to traditional global optimization methods. Experimental results show that the profile-based code optimizer significantly improves the performance of production C programs that have already been optimized by a high-quality global code optimizer.  相似文献   

13.
郭德贵  王冠成  吕帅  刘磊 《软件学报》2017,28(5):1221-1232
部分求值技术在程序优化及软件自动生成等方面,有着极为重要的作用.本文将部分求值技术应用到编译器测试中.为此,设计了一个C语言的子集peC语言,给出了该语言的部分求值策略的形式化描述,实现了peC语言的部分求值器,设计了基于部分求值技术的编译器测试框架.通过实验,本文的方法可以检测出大部分之前的其它的方法发现的GCC、LLVM编译器中的错误,此外还发现了其它方法不能发现的错误,表明将部分求值技术应用到编译器测试中是有效的.  相似文献   

14.
Modern optimizing compilers apply a fixed sequence of optimizations, which we call a compilation sequence, to each program that they compile. These compilers let the user modify their behavior in a small number of specified ways, using command-line flags (e.g.,-O1,-O2,...). For five years, we have been working with compilers that automatically select an appropriate compilation sequence for each input program. These adaptive compilers discover a good compilation sequence tailored to the input program, the target machine, and a user-chosen objective function. We have shown, as have others, that program-specific sequences can produce better results than any single universal sequence [1, 7, 10, 21, 23] Our adaptive compiler looks for compilation sequences in a large and complex search space. Its typical compilation sequence includes 10 passes (with possible repeats) chosen from the 16 available—there are 1610 or [1,099,511,627,776] such sequences. To learn about the properties of such spaces, we have studied subspaces that consist of 10 passes drawn from a set of 5 (510 or 9,765,625 sequences). These 10-of-5 subspaces are small enough that we can analyze them thoroughly but large enough to reflect important properties of the full spaces.This paper reports, in detail, on our analysis of several of these subspaces and on the consequences of those observed properties for the design of search algorithms. This work has been supported by the Los Alamos Computer Science Institute and by the National Science Foundation through grant CCR-0205303.  相似文献   

15.
对于TMS320C24x的控制程序的开发,采用C语言和汇编语言混合编辑具有较高的效率。本文阐述了两种语言的接口方式和接口协议,并给出了采用这种接口技术实现混合编程的几种典型应用实例。  相似文献   

16.
The program analyzer generator PAG described in this paper attempts to offer the best of both worlds, specification languages based on the clean theory of abstract interpretation and efficient implementation methods from the theory of data flow analysis. PAG has a high level functional input language to specify data flow analyses. It offers the generation of complex data structures and is therefore not limited to bit vector problems. PAG generated interprocedural analyzers can be easily integrated into existing compilers. PAG has successfully been used in the ESPRIT project COMPARE to generate several analyzers (including alias analysis and constant propagation) for industrial quality ANSI-C and Fortran90 compilers, and is now marketed by the spin-off company AbsInt.A simplified version of PAG can be interactively tested over the Web.  相似文献   

17.
18.
变量私有化是并行化编译的以消除不必要的基于地址的相关性,从而提高程序的并行性.本文主要讨论几种典型的变量私有化方法,并对私有化过程中的相关问题做一比较全面的探讨.  相似文献   

19.
高性能计算应用程序获得的持续性能与机器峰值性能的差距日益扩大,很大程度上制约着高性能计算的发展。程序变换通过对程序进行适应机器体系结构特征的优化变换,提高程序实际执行性能,是解决该问题的有效途径之一。很多高级程序变换均具有数值参数,为了获得最优性能,需要仔细选择参数的值。传统的编译器使用简单的模型选择这些参数,难以适应日趋复杂的硬件平台和应用程序。迭代编译通过生成不同的程序版本并在实际硬件评估上运行程序,来评估关键优化参数的值并决定能够产生最优性能的值,显著优于静态方法,但巨大的优化开销限制了其应用范围。本文针对矩阵相乘程序提出一种结合性能模型和迭代编译的优化方法,利用基于对机器体系结构和程序的经验知识构造性能模型约束优化空间,并使用遗传算法加速在优化空间中寻找优秀解的过程。实验结果表明,该方法可以较低的开销获得更优的性能优化效果。  相似文献   

20.
本文以实例程序及其在3种不同编译器上的不同运行结果,表明C/C 运算求值顺序存在缺陷。并利用3种命令行编译器生成实例程序对应的汇编语言程序,深入分析了各编译器在运算求值顺序实现中的具体差异,这对准确、高效地运用C/C 是有益的。  相似文献   

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

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