C語言程式的記憶體劃分
一個可執行的C語言程式,在執行的時候,其記憶體主要分為這幾個部分
(注意:這個地方的堆和資料結構的堆不是一個概念,一定要注意區分)
堆和棧的區別malloc申請堆記憶體 char *Ptr = NULL; Ptr = (char *)malloc(MAX_BUF_SIZE); if (NULL == Ptr) { printf("malloc error!\n"); exit (1);//exit(1):非正常執行導致退出程式; } /*記憶體初始化*/ memset(p, '\0', MAX_BUF_SIZE); // code... /*釋放記憶體*/ free(Ptr); Ptr = NULL; // code...
最新評論