3 回答

TA貢獻1條經驗 獲得超0個贊
?使用malloce命令不是只需要在頭文件加入????#include <stdlib.h>????嗎?
怎么你的頭文件確實卻多了一個????#include<malloc.h>?????????我不懂,望解答。
還有個問題我想問你:
void * malloc(unsigned int size)????這個命令,
為啥例子是這樣寫的: malloc(100);????分配100個字節
我又看到這樣用的:(int *)malloc(5 * sizeof(int));????我知道sizeof(int)是測量本系統int型單位字節數,但我不明白為什么在前面要加個 ?* ? 號?這樣有啥意義嗎?
還有就是另一個命令void * calloc(unsigned n,unsigned size); ?這個怎么用,比如我要開辟一個N個長度為size的連續空間,保存一個? ? char * 型的指針數組????那如何實現?我的想法是比如:
(char *)calloc(50,4);????開辟50個長度為4字節的連續空間
但我又怕會不會是這樣:
(char *)calloc(50,4 * sizeof(char));????這樣有問題嗎?可以加????*????號嗎?
可以sizeof(char)測量char型的單位字節數?恐怕這不能這樣測量吧?。。????
希望大神解答

TA貢獻6條經驗 獲得超0個贊
這個問題是,前幾天學習鏈表的創建,所疑惑的地方.
現在我有答案了
循環創建動態內存,如上邊代碼 int * i.
i?的地址是不會變的,但i里邊保存即是指向的地址是每次循環就變動一次.
創建出來不知名的動態內存,沒有被釋放,系統還是把那些內存分配給了該程序.
但程序員已經找不到了.
- 3 回答
- 1 關注
- 2427 瀏覽
添加回答
舉報