![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
文章平均质量分 84
naturism
Run away!
展开
-
内存分配方式总结
内存分配方式 内存分配方式有三种:1. 从静态存储区域分配.内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量,static变量2. 在栈上创建.在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放.栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限3. 从堆上分配,亦称动态内存原创 2008-11-22 21:36:00 · 577 阅读 · 0 评论 -
内存泄漏
C/C++内存泄漏 对于一个c/c++程序员来说,内存泄漏是一个常见的也是令人头疼的问题。已经有许多技术被研究出来以应对这个问题,比如Smart Pointer,Garbage Collection等。Smart Pointer技术比较成熟,STL中已经包含支持Smart Pointer的class,但是它的使用似乎并不广泛,而且它也不能解决所有的问题;Garbage Colle原创 2008-11-22 21:47:00 · 390 阅读 · 0 评论 -
C/C++ 程序设计员应聘常见面试试题深入剖析(2)
C/C++ 程序设计员应聘常见面试试题深入剖析(2) 3.内功题 试题1:分别给出BOOL,int,float,指针变量 与“零值”比较的 if 语句(假设变量名为var) 解答: BOOL型变量:if(!var) int型变量: if(var==0) float型变量: const float EPSINON = 0.00001; if ((x >= - EPS原创 2008-11-23 10:09:00 · 447 阅读 · 0 评论 -
C++中const用法总结
C++中const用法总结 1. const常量,如const int max = 100; 优点:const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查,并且在字符替换时可能会产生意料不到的错误。2. const 修饰类的数据成员。原创 2008-11-23 10:22:00 · 404 阅读 · 0 评论 -
堆内存和栈内存区别
堆内存和栈内存区别 (1) 堆栈。驻留于常规RAM(随机访问存储器)区域,但可通过它的“堆栈指针”获得处理的直接支持。堆栈指针若向下移,会创建新的内存;若向上移,则会释放那些内存。这是一种特别快、特别有效的数据保存方式,仅次于寄存器。创建程序时,Java编译器必须准确地知道堆栈内保存的所有数据的“长度”以及“存在时间”。这是由于它必须生成相应的代码,以便向上和向下移动指针。这一限制无原创 2008-11-23 09:49:00 · 508 阅读 · 0 评论 -
C/C++ 程序设计员应聘常见面试试题深入剖析(1)
C/C++ 程序设计员应聘常见面试试题深入剖析(1) 1.引言 本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。 许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strcpy函数都可看出面试者在技术上究竟达到了怎样的程度,我们能真正写好原创 2008-11-23 09:58:00 · 521 阅读 · 0 评论 -
C/C++ 程序设计员应聘常见面试试题深入剖析(3)
C/C++ 程序设计员应聘常见面试试题深入剖析(3) 试题5:编写一个函数,作用是把一个char组成的字符串循环右移n个。比如原来是“abcdefghi”如果n=2,移位后应该是“hiabcdefgh” 函数头是这样的: //pStr是指向以/0结尾的字符串的指针//steps是要求移动的nvoid LoopMove ( char * pStr, int steps ){ /原创 2008-11-23 10:21:00 · 680 阅读 · 0 评论