最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解C語言中free()函數(shù)與getpagesize()函數(shù)的使用

 更新時間:2015年08月26日 16:46:55   投稿:goldensun  
這篇文章主要介紹了詳解C語言中free()函數(shù)與getpagesize()函數(shù)的使用,是C語言入門學習中的基礎知識,需要的朋友可以參考下

C語言free()函數(shù):釋放動態(tài)分配的內存空間
頭文件:

#include <stdlib.h>

free() 函數(shù)用來釋放動態(tài)分配的內存空間,其原型為:

 void free (void* ptr);

free() 可以釋放由 malloc()、calloc()、realloc() 分配的內存空間,以便其他程序再次使用。

【參數(shù)說明】ptr 為將要釋放的內存空間的地址。

free() 只能釋放動態(tài)分配的內存空間,并不能釋放任意的內存。下面的寫法是錯誤的:

int a[10];
// ...
free(a);

如果 ptr 所指向的內存空間不是由上面的三個函數(shù)所分配的,或者已被釋放,那么調用 free() 會有無法預知的情況發(fā)生。

如果 ptr 為 NULL,那么 free() 不會有任何作用。

注意:free() 不會改變 ptr 變量本身的值,調用 free() 后它仍然會指向相同的內存空間,但是此時該內存已無效,不能被使用。所以建議將 ptr 的值設置為 NULL,例如:

free(ptr);
ptr = NULL;

代碼示例:

#include <stdlib.h>
int main ()
{
 int * buffer1, * buffer2, * buffer3;
 buffer1 = (int*) malloc (100*sizeof(int));
 buffer2 = (int*) calloc (100,sizeof(int));
 buffer3 = (int*) realloc (buffer2,500*sizeof(int));
 free (buffer1);
 free (buffer3);
 system("pause");
 return 0;
}

C語言getpagesize()函數(shù):取得內存分頁大小
頭文件:

#include <unistd.h>

定義函數(shù):

size_t getpagesize(void);

函數(shù)說明:返回一分頁的大小,單位為字節(jié)(byte)。此為系統(tǒng)的分頁大小,不一定會和硬件分頁大小相同。

返回值:內存分頁大小。

附加說明:在 Intel x86 上其返回值應為4096bytes。

范例

#include <unistd.h>
main(){
 printf("page size = %d\n", getpagesize());
}

相關文章

  • C++實現(xiàn)LeetCode(26.有序數(shù)組中去除重復項)

    C++實現(xiàn)LeetCode(26.有序數(shù)組中去除重復項)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(26.有序數(shù)組中去除重復項),本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下
    2021-07-07
  • Qt實現(xiàn)TCP客戶端和服務器通訊程序

    Qt實現(xiàn)TCP客戶端和服務器通訊程序

    這篇文章主要為大家詳細介紹了Qt實現(xiàn)TCP客戶端和服務器通訊程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C語言中scanf的用法舉例

    C語言中scanf的用法舉例

    本節(jié)介紹輸入函數(shù)?scanf?的用法,scanf?和?printf?一樣,非常重要,而且用得非常多,所以一定要掌握,這篇文章主要介紹了C++中scanf的用法舉例,需要的朋友可以參考下
    2022-11-11
  • QT生成隨機驗證碼的方法

    QT生成隨機驗證碼的方法

    這篇文章主要為大家詳細介紹了QT生成隨機驗證碼的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • VS2017開發(fā)C語言出現(xiàn)“no_init_all“的解決辦法

    VS2017開發(fā)C語言出現(xiàn)“no_init_all“的解決辦法

    這篇文章介紹了VS2017開發(fā)C語言出現(xiàn)“no_init_all“的解決辦法,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • VSCODE+cmake配置C++開發(fā)環(huán)境的實現(xiàn)步驟

    VSCODE+cmake配置C++開發(fā)環(huán)境的實現(xiàn)步驟

    這篇文章主要介紹了VSCODE+cmake配置C++開發(fā)環(huán)境的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • c語言階乘之和問題示例詳解

    c語言階乘之和問題示例詳解

    這篇文章主要給大家介紹了關于c語言階乘之和問題的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用c語言具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-08-08
  • C++畫正弦線實例代碼

    C++畫正弦線實例代碼

    這篇文章主要介紹了C++畫正弦線實例代碼,是C++圖形操作程序設計中比較常見的一個技巧,需要的朋友可以參考下
    2014-10-10
  • 利用Qt實現(xiàn)可擴展對話框的示例代碼

    利用Qt實現(xiàn)可擴展對話框的示例代碼

    可擴展對話框通常用于用戶對界面有不同要求的場合。當供高級用戶使用或需要更多信息時,可通過某種方式的切換顯示完整對話窗體(擴展窗體)。本文將用Qt實現(xiàn)可擴展對話框,需要的可以參考一下
    2022-06-06
  • C++ 智能指針代碼解析

    C++ 智能指針代碼解析

    這篇文章主要介紹了c++ 智能指針基礎的相關資料,幫助大家更好的理解和學習使用c++,感興趣的朋友可以了解下,希望能給你帶來幫助
    2021-10-10

最新評論

开化县| 红河县| 当阳市| 寿阳县| 长葛市| 泾源县| 徐水县| 宝山区| 金华市| 望城县| 普格县| 宜兰市| 芒康县| 陈巴尔虎旗| 万荣县| 如东县| 宝山区| 庄河市| 孙吴县| 辽阳市| 桦川县| 四子王旗| 桦南县| 根河市| 天气| 堆龙德庆县| 开化县| 繁峙县| 灵川县| 浪卡子县| 甘泉县| 汝南县| 虎林市| 江华| 临沭县| 延吉市| 隆德县| 乐平市| 玉溪市| 柳林县| 潢川县|