1、我們可以用函式返回值來傳遞動態記憶體
char *getmemory3(int num)
void test3(void)
2、像下面這樣寫就會有錯誤
char *getstring(void)
void test4(void)
3、下面這樣寫設計概念是錯誤的,getstring2 內的「hello world」是常量字串,位於靜態儲存區,它在程式生命期內
恆定不變。無論什麼時候呼叫getstring2,它返回的始終是同乙個「唯讀」的記憶體塊。
char *getstring2(void)
void test5(void)
4、free後是野指標,要把p設定為null,否則出錯
char *p = (char *) malloc(100);
strcpy(p, 「hello」);
free(p); // p 所指的記憶體被釋放,但是p所指的位址仍然不變
…if(p != null) // 沒有起到防錯作用
5、new/delete的功能完全覆蓋了malloc/free,但c++程式經常要呼叫c函式,而c程式只能用malloc/free管理動態記憶體。
C語言中的函式指標
開啟去年6月的乙個test.cpp檔案,發現對裡面測試的函式指標幾乎沒有印象了。溫故而知新,於是重新找到ansi c 裡面的說明 除了宣告指向整型數字 雙精度型數字和c語言其他資料型別的指標外,指標也能夠被宣告指向乙個函式 包含乙個函式的位址 指向函式的指標是可能的,因為函式名像陣列名一樣,它們本身...
C語言中的函式指標
1.函式指標的定義 顧名思義,函式指標就是函式的指標。它是乙個指標,指向乙個函式。2.函式指標的使用 我們定義了乙個函式指標,但如何來使用它呢?先看如下例 include include char fun char p1,char p2 int i 0 i strcmp p1,p2 if 0 i r...
C語言中的函式指標 指向函式的指標
函式指標是什麼?在定義乙個函式之後,在編譯後,系統會為函式分配一段儲存空間。指標用來儲存位址的,而函式指標也是一樣,只不過儲存的是函式儲存空間的起始位址.如何在c語言中使用函式指標int p int int int代表的是指標變數名,兩個int代表,函式引數有兩個,且都為int型,當然以上定義只為示...