日韩精品中文字幕一区二区-日韩精品中文字幕一区-日韩精品中文字幕视频-日韩精品在线一区二区三区-第一页在线-第一福利视频

當(dāng)前位置: 首頁(yè)IT技術(shù) → 不限長(zhǎng)度動(dòng)態(tài)分配內(nèi)存(malloc、calloc和realloc) 讓內(nèi)存使用率提高

不限長(zhǎng)度動(dòng)態(tài)分配內(nèi)存(malloc、calloc和realloc) 讓內(nèi)存使用率提高

更多

(1)、malloc在分配內(nèi)存之后不會(huì)對(duì)分配的內(nèi)存進(jìn)行初始化

(2)、calloc在分配內(nèi)存之后,在返回指向已分配的內(nèi)存的指針之前會(huì)對(duì)內(nèi)存進(jìn)行初始化

(3)、realloc用于修改一個(gè)原先已分配的內(nèi)存塊大小,如果原先的內(nèi)存塊大小無(wú)法改變,該函數(shù)將分配一塊正確大小的內(nèi)存,并把原先那塊內(nèi)存的內(nèi)容復(fù)制到新分配的內(nèi)存塊上。所以在使用該函數(shù)后,就不能再使用指向舊內(nèi)存塊的指針。該函數(shù)不對(duì)新內(nèi)存初始化。

(4)、在一塊內(nèi)存不使用時(shí)使用free函數(shù)將內(nèi)存釋放。

下面的程序是動(dòng)態(tài)分配內(nèi)存:

/** * 將字符串復(fù)制到動(dòng)態(tài)分配的內(nèi)存中,不限值字符串的長(zhǎng)度 * @file string_alloc.c * @brief * @author struggleLinux@gmail.com * @version 1.0 * @date 2011-05-19 */ #include #include #include #define False 0 /** * 獲取字符并動(dòng)態(tài)分配內(nèi)存空間 * @brief alloc_string * * @return */ char * alloc_string( ) { char *string; int i , flag; string = (char *)malloc(1); //為分配一個(gè)字符長(zhǎng)度 if( string == NULL ) return NULL; for( i = 0 ; (*(string+i) = getchar()) != EOF ;i++ ){ if(*(string+i) == 'Q' ){ //Q退出循環(huán) *(string+i) = '\0'; break; } string = (char * )realloc( string,strlen(string)+1); //為string重新分配長(zhǎng)度 if( string == NULL ){ break; } } return string; } int main() { char *str; str = alloc_string(); if( str == NULL ) printf("ERRORS:動(dòng)態(tài)分配錯(cuò)誤"); else printf("字符串為:\n%s\n",str); return 0; }

熱門評(píng)論
最新評(píng)論
發(fā)表評(píng)論 查看所有評(píng)論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)
主站蜘蛛池模板: 10的认识评课优点及不足| 我的电影在线观看| 最爱电影完整版在线观看免费高清 | 丘淑贞| 难兄难弟 电视剧| 斑点狗动画片| 追凶电影| 李洋简介| 那年秋天| squirting| 四月一日| 围城电影| 生气的形容词| 夜店 电影| 青山知可子冲绳草莽英雄1969| 泰迪熊3| 我的朋友作文| 致命录像带| 焊缝外观质量检验标准| overwatch| 搜狐手机首页| 挖掘机动画片儿童| 野蛮人电影| 喝醉的图片| 单身即地狱| 白培中| 电影《林海雪原》| 实力主义教室第三季| 挠60分钟美女腋窝视频| 可可托海的牧羊人原唱歌曲| 王若晰的个人资料| 玉林电视台| 孽子 电影| 女生被艹| 林正英复仇电影| 女人战争之肮脏的交易| 秀人网周妍希| 秀场视频高清完整版| 亚洲猛色少妇xxxxx色老头| 小丑与小丑女| 大海啊故乡钢琴谱|