码迷,mamicode.com
首页 >  
搜索关键字:malloc    ( 2467个结果
字符型指针为什么不能修改单个字符?
char *p="hello"; *p='k'; //编译能通过,但是运行到这里会出错 因为p指向的是一个字符串常量. 所以运行时发现要改常量区就会报错. 改成: char* p = (char*)malloc(6); strcpy(p,"hello"); *p='k'; .... free(p);...
分类:其他好文   时间:2015-04-28 18:22:20    阅读次数:105
根据上篇博客联想到了C/C++和Delphi的内存分配和管理的问题
首先看上一篇博客关于类创建对象的问题:http://www.cnblogs.com/xumenger/p/4462975.html联想到通过指针分配内存 我们通过指针动态分配了内存之后,需要记住这个指针(该指针指向分配的内存),比如C/C++中的int *pi;pi =(int*) malloc(....
分类:编程语言   时间:2015-04-28 15:52:27    阅读次数:191
动态内存分配 学习笔记
#include<stdio.h> #include<stdlib.h> char*substr(constchar*s,intn1,intn2) { char*p=(char*)malloc(n2-n1+2); inti,j=0; for(i=n1;i<=n2;i++,j++) p[j]=s[i]; p[j]=‘\0‘; returnp; } voidmain(void) { chars[80],*sub; intn1,n2; printf("请输入..
分类:其他好文   时间:2015-04-26 01:47:06    阅读次数:146
【源码剖析】MemoryPool —— 简单高效的内存池 allocator 实现
内存池简单说,是为了减少频繁使用 malloc/free new/delete 等系统调用而造成的性能损耗而设计的。当我们的程序需要频繁地申请和释放内存时,频繁地使用内存管理的系统调用可能会造成性能的瓶颈,嗯,是可能,毕竟操作系统的设计也不是盖的。内存池的思想是申请较大的一块内存(不够时继续申请),之后把内存管理放在应用层执行,减少系统调用的开销。...
分类:其他好文   时间:2015-04-24 19:15:37    阅读次数:341
c语言中malloc realloc 和calloc的联系与区别
(1)C语言跟内存分配方式从静态存储区域分配. 内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.在栈上创建 在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放.栈内存分配运算内置于处理器的指令集中,效率很...
分类:编程语言   时间:2015-04-24 16:16:38    阅读次数:122
malloc calloc realloc alloca
本文来至http://www.cnblogs.com/jyaray/archive/2010/06/04/1751775.html内存区域可以分为栈、堆、静态存储区和常量存储区,局部变量,函数形参,临时变量都是在栈上获得内存的,它们获取的方式都是由编译器自动执行的。利用指针,我们可以像汇编语言一样处...
分类:其他好文   时间:2015-04-24 13:50:50    阅读次数:160
内存管理
1 内存五大区 栈 堆 静态区 常量区 代码区2 int result = 0; //calloc和malloc功能一样,都是在堆区开辟一块新的空间,唯一不同的是,calloc还把空间重启了一下 //第一个参数是分配多少个房间 //第二个参数是每个房间多少字节 //realloc ...
分类:其他好文   时间:2015-04-23 23:09:31    阅读次数:204
关于C初始化内存
关于C初始化内存...
分类:其他好文   时间:2015-04-23 09:35:03    阅读次数:116
IOS上解决内存越界访问问题
IOS经常会混合使用C代码,而在C中,对内存的读写是很频繁的操作。其中,内存越界读写 unsigned char* p =(unsigned char*)malloc(10); unsigned char c = *(p+100) ; free(p);是一种很容易犯的错误,在大部...
分类:移动开发   时间:2015-04-21 22:05:53    阅读次数:265
深入理解《字符指针与字符数组真正的区别》
来自: http://blog.csdn.net/on_1y/article/details/13030439 (这篇介绍的非常到位和透彻!!!)char *p="hello";char q[]="hello";char *r = (char*)malloc(sizeof(char)*6);我们知道...
分类:编程语言   时间:2015-04-21 17:29:22    阅读次数:137
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!