深入分析C语言的函数malloc、free和C++的操作符new、delete之间的异同...
分类:
其他好文 时间:
2015-06-13 23:07:41
阅读次数:
119
先来看两段代码--
错误代码:
#include "string.h"
#include
#include
void test(char ** dest, char * src, int n) {
(*dest) = (char*) malloc(sizeof(char) * n);
strcpy(*dest, src);
}
int main(int argc, char** a...
分类:
系统相关 时间:
2015-06-13 17:10:41
阅读次数:
211
一、原型:extern void *malloc(unsigned int num_bytes);头:#include 或 #include (注意:alloc.h malloc.h 的内容是全然一致的。)功能:分配长度为num_bytes字节的内存块说明:假设分配成功则返回指向被分配内存的指...
分类:
其他好文 时间:
2015-06-13 12:47:42
阅读次数:
109
1.malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存2.对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由malloc/fr...
分类:
其他好文 时间:
2015-06-13 11:19:25
阅读次数:
94
#include<stdio.h>#include<stdlib.h>#defineMAXQSIZE100typedefintStatus;typedefintQElemtype;typedefstruct{ QElemtype*base; intfront; intrear;}SqQueue;StatusInitQueue(SqQueue&Q){ Q.base=(QElemtype*)malloc(MAXQSIZE*sizeof(QElemtype)); if(!Q.base..
分类:
编程语言 时间:
2015-06-12 01:08:14
阅读次数:
168
wchar_t* longStr = (wchar_t*) malloc(16*sizeof(wchar_t)); swprintf(longStr, L"%d", this->m_longAuthority); this->m_pToolTip->SetText(TEXT_K...
分类:
其他好文 时间:
2015-06-11 14:34:43
阅读次数:
95
http://blog.sina.com.cn/s/blog_6fc5bfa90100qgd7.html1,malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 2, 对于非内部数据类型的对象而言,光用maloc/free无法...
分类:
其他好文 时间:
2015-06-11 00:03:51
阅读次数:
135
#include<stdio.h>#include<stdlib.h>typedefintStatus;typedefintElemtype;typedefstructLNode{ Elemtypedata; structLNode*next;}*LinkList;StatusInitList(LinkList&L){ L=(LinkList)malloc(sizeof(LNode)); L->next=NULL; return1;}StatusDestoryList(L..
分类:
编程语言 时间:
2015-06-10 15:57:02
阅读次数:
132
共享内存是进程间通信中最简单的方式之一。共享内存允许两个或更多进程访问同一块内存,就如同 malloc() 函数向不同进程返回了指向同一个物理内存区域的指针。当一个进程改变了这块地址中的内容的时候,其它进程都会察觉到这个更改。
1)共享内存是进程间共享数据的一种最快的方法。
一个进程向共享的内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容。
2)使用共享内存要注意的是多个进程之间对一个给定存储区访问的互斥。
若一个进程正在向共享内存区写数据,则在它做完这一步操作前,别的进程不应当去读、...
分类:
系统相关 时间:
2015-06-09 23:43:32
阅读次数:
209
#include<stdio.h>#include<stdlib.h>#defineLIST_INIT_SIZE100#defineLIST_INCREMENT10#defineStatusinttypedefintElemType;typedefstruct{ ElemType*elem; intlength; intlistsize;}SqList;StatusInitList(SqList&L){ L.elem=(ElemType*)malloc(LIST_INIT_SI..
分类:
编程语言 时间:
2015-06-09 17:43:31
阅读次数:
143