malloc calloc和realloc的區別

2021-09-22 10:13:29 字數 589 閱讀 3992

malloc、calloc和realloc三者都是記憶體分配操作相關的函式,要使用他們,就需要包含stdlib.h的標頭檔案。

下面對他們的介面和含義進行說明。

函式:void *malloc( size_t size );

含義:函式在堆上分配size大小(以位元組為單位)的空間,基本上同calloc函式但是它不對記憶體做初始化

函式:void* calloc( size_t num, size_t size );

含義:函式返回指向num個數size大小(以位元組為單位)的連續的記憶體空間的首位址並且先把記憶體中的內容初始化為0

函式:void *realloc( void *ptr, size_t size );

含義:函式重新為ptr指標分配空間,新的空間大小為size(以位元組為單位)並且釋放原來分配的空間,只是原來空間的內容還是保留著,還可以用原來的指標來訪問,他所釋放的是作業系統中使用記錄表項,即刪除記憶體表的資訊。

malloc、calloc和realloc分配的記憶體的釋放都是用free

函式:void free( void* ptr );

含義:函式釋放用calloc,alloc,realloc函式申請的空間

re模組和正則

正規表示式 就是用來篩選字串中特定內容的一串具有某種邏輯規則的字元組成。正規表示式不是python獨有的,而是一門獨立的技術,它在所有的程式語言中都有使用,在python中使用就必須依賴於re模組。正則的應用場景 比如,爬蟲,資料分析。正則的使用某些特定邏輯的字元構造的 可以簡化我們的 的冗餘。看以...

9 正則和re模組

目錄二 re模組 正規表示式 一些有特殊含義的字元組合到一起,形成一套規則,用於匹配字串的。用途 1 檢測字串是否合法2 從大檔案中找到符合規則的內容放到字元組和非字元組中表示所有 預設匹配除 n之外的任意乙個字元 匹配字元開頭 匹配字元結尾 匹配 號前的字元0次或多次 匹配前乙個字元1次或多次 匹...

urllib和re模組的使用

re模組的使用 匹配任意乙個字元,除了 n 匹配字串的開頭 匹配字串的結尾 re模組 1 complie方法 將正規表示式的字串形式編譯為乙個pattern物件 2,match方法 從起始位置開始匹配符合規則的字串,單次匹配,匹配成功,立即返回match物件,未匹配成功則返回none 3.searc...