大家好,今天小編關(guān)注到一個(gè)比較有意思的話題,就是關(guān)于calloc的翻譯問題,于是小編就整理了4個(gè)相關(guān)介紹calloc的解答,讓我們一起看看吧。
malloc與calloc的區(qū)別?
malloc一般指malloc函數(shù)。中文叫動(dòng)態(tài)內(nèi)存分配,用于申請(qǐng)一塊連續(xù)的指定大小的內(nèi)存塊區(qū)域以void*類型返回分配的內(nèi)存區(qū)域地址,當(dāng)無法知道內(nèi)存具體位置的時(shí)候,想要綁定真正的內(nèi)存空間,就需要用到動(dòng)態(tài)的分配內(nèi)存。
calloc函數(shù)原型,在內(nèi)存的動(dòng)態(tài)存儲(chǔ)區(qū)中分配num個(gè)長(zhǎng)度為size的連續(xù)空間,函數(shù)返回一個(gè)指向分配起始地址的指針。
malloc是什么?
malloc() 函數(shù)用來動(dòng)態(tài)地分配內(nèi)存空間,其原型為:void* malloc (size_t size);
說明:
【參數(shù)說明】
size 為需要分配的內(nèi)存空間的大小,以字節(jié)(Byte)計(jì)。
【函數(shù)說明】
malloc() 在堆區(qū)分配一塊指定大小的內(nèi)存空間,用來存放數(shù)據(jù)。這塊內(nèi)存空間在函數(shù)執(zhí)行完成后不會(huì)被初始化,它們的值是未知的。如果希望在分配內(nèi)存的同時(shí)進(jìn)行初始化,請(qǐng)使用 calloc() 函數(shù)。
【返回值】
分配成功返回指向該內(nèi)存的地址,失敗則返回 NULL。
操作:
由于申請(qǐng)內(nèi)存空間時(shí)可能有也可能沒有,所以需要自行判斷是否申請(qǐng)成功,再進(jìn)行后續(xù)操作。
如果 size 的值為 0,那么返回值會(huì)因標(biāo)準(zhǔn)庫(kù)實(shí)現(xiàn)的不同而不同,可能是 NULL,也可能不是,但返回的指針不應(yīng)該再次被引用。
注意:函數(shù)的返回值類型是 void *,void 并不是說沒有返回值或者返回空指針,而是返回的指針類型未知。所以在使用 malloc() 時(shí)通常需要進(jìn)行強(qiáng)制類型轉(zhuǎn)換,將 void 指針轉(zhuǎn)換成我們希望的類型,例如:
#include<stdlib.h>
typedef int ListData;
ListData *data; //存儲(chǔ)空間基址
data = ( ListData * ) malloc( 100 * sizeof ( ListData ) );
malloc和free的區(qū)別?
malloc的全稱是memory allocation,中文叫動(dòng)態(tài)內(nèi)存分配,用于申請(qǐng)一塊連續(xù)的指定大小的內(nèi)存塊區(qū)域以void*類型返回分配的內(nèi)存區(qū)域地址,當(dāng)無法知道內(nèi)存具體位置的時(shí)候,想要綁定真正的內(nèi)存空間,就需要用到動(dòng)態(tài)的分配內(nèi)存,且分配的大小就是程序要求的大小。
free是C語言中釋放內(nèi)存空間的函數(shù),通常與申請(qǐng)內(nèi)存空間的函數(shù)malloc()結(jié)合使用,可以釋放由 malloc()、calloc()、realloc() 等函數(shù)申請(qǐng)的內(nèi)存空間。
C++中頭文件cstdlib是什么?
就是C中的stdlib.h,在C++中調(diào)用該頭文件中的函數(shù)需要引用cstdlib用法與C語言中的stdlib.h相同。stdlib頭文件即standardlibrary標(biāo)準(zhǔn)庫(kù)頭文件。stdlib.h里面定義了五種類型、一些宏和通用工具函數(shù)。類型例如size_t、wchar_t、div_t、ldiv_t和lldiv_t;宏例如EXIT_FAILURE、EXIT_SUccESS、RAND_MAX和MB_CUR_MAX等等;常用的函數(shù)如malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()等等。具體的內(nèi)容可以打開編譯器的include目錄里面的stdlib.h頭文件查看。
到此,以上就是小編對(duì)于calloc的翻譯問題就介紹到這了,希望介紹關(guān)于calloc的4點(diǎn)解答對(duì)大家有用。