- 博客(10)
- 资源 (8)
- 收藏
- 关注
转载 有了malloc/free为什么还要new/delete?
malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用malloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。 因此C++语言需要一个能完成动态内存分配和初始化工作的运算符new,以及一个能完成清理与释放内
2011-05-24 18:06:00 607
原创 堆排序实现
堆排序的基本思想:将array[n]的数组看成一棵完全二叉树。父节点均大于其左右子节点的,为大根堆;父节点均小于其左右子节点的,为小根堆。1) 初建堆--从length/2节点开始,自底向上调整,使array[n]成为一个大顶堆;2) 交换堆顶元素(最大值)和最后一个元素,将移走最大元素后的剩余元素,从堆顶开始再调整为堆;3) 重复步骤2)n-1次,则实现array[n]升序排列。堆调整过程:1) 从待调整元素i开始开始调整,自顶向下地作如下调整:2) 将待调整元素与其左右孩子节点比较,三者中最大者作为新的
2011-05-22 18:11:00 563
转载 extern C实现C与C++函数的相互调用
http://www.cnblogs.com/graphics/archive/2010/12/24/1916343.html经常看到如下代码:#ifdef _cplusplusextern "C" {#endif#include "XXX.h"#ifdef _cplusplus}#endif解释:这段代码的含义是,如果当前的程序是C++程序,那么下面引用的头文件是C文件, 那如果当前程序不是C++呢?难道包含的就不是C文件了么?当然不是,不管当前程序是什么,这个XXX.h都是一个C
2011-05-16 22:47:00 946
转载 大端序与小端序
大端序与小端序http://www.cnblogs.com/graphics/archive/2011/04/22/2010662.html 何为大端序,小端序?简单点说,就是字节的存储顺序,如果数据都是单字节的,那怎么存储无所谓了,但是对于多字节数据,比如int,double等,就要考虑存储的顺序了。注意字节序是硬件层面的东西,对于软件来说通常是透明的。再说白一点,字
2011-05-16 20:27:00 1220
原创 返回局部变量的问题
函数返回局部变量,是返回局部变量的值。但指针(或地址)是一种特殊的值,所以返回局部指针变量需要特别注意。正确情况下,作为函数返回值的局部指针,其所指向对象的作用域应该是调用者作用域、全局或静态常量区;指向栈空间对象的指针作为返回值,存在潜在的错误。1. 返回局部值变量int num(void){ inta; returna;}函数返回时,将返回a的副本(值),然后a被注销,所以不存在问题。2. 返回局部指针变量2.1 返回
2011-05-15 23:07:00 5273
原创 奔跑的内存——C语言的陷阱和缺陷
int i, a[10]; for(i = 1; i a[i] = 0; 这个例子的目的是要将a中的每个元素都设置为0,但没有期望的效果。因为for语句中的比较i 被替换成了i ,a中的一个编号为10的并不存在的元素被设置为了0
2011-05-13 22:25:00 1230
原创 关于sizeof(空struct和空class)
struct empty_struct{}empty_struct;struct empty_class{}empty_class; 问:sizeof(empty_struct)和sizeof(empty_class)的大小分别是多少?1. Windows平台下,VC6.0编译环境:空结构体C文件中无法编译通过;在CPP文件中,分别输出1、12.Linux下gcc编译 C文件中,sizeof(empty_struct) = 0C++文件中,sizeof(empty_struct) = 1
2011-05-10 17:02:00 2265
转载 神秘的sizeof(union和struct的区别)
union A{ int a[5];char b;double c; };struct B{int n;A a;char c[10]; }sizeof(B) = ?答案:union A: { int a[5]; //20 char b; //1
2011-05-07 19:36:00 825
转载 出现频率最高的笔试题strcpy写法
题目: 已知strcpy函数的原型是:char * strcpy(char * strDest,const char * strSrc);1.不调用库函数,实现strc
2011-05-07 16:55:00 700
原创 求n的阶乘,使用数组存储结果
利用基本乘法运算思想求n的阶乘,使用数组存放所得结果。利用数组存放结果,可避免大数溢出的问题。#include int main(){ long int n; long int a[250000]; //确保保存最终运算结果的数组足够大 long int digit = 1; //结果的位数 long int temp; //阶乘的任一元素与临时结果的某位的乘积结果 long int i,j,carry;
2011-05-05 22:30:00 9138 1
RFC3164中文文档.txt
2010-07-27
RFC3164.txt
2010-07-27
mplayer-svn_r27865.tar.bz2
2009-10-18
drcom-1.4.8.1.tar.gz
2009-09-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人