有時候,我們需要在函式體的內部申請記憶體空間並初始化,然後將內部申請的儲存空間交付給外部指標來引用,這時候,我們可以使用二級指標作為申請空間的函式的引數來實現。
main.c檔案:
#include
#include
#include
#pragma pack(push,1)
typedef
struct userinfo yf_userinfo;
#pragma pack(pop)
void adduserinfo(yf_userinfo **info);
int main(int argc, const
char * argv)
/** * 注意:這裡必須使用二級指標,如果使用一級指標的話,同級指標之間賦值
* 是以值傳遞的方式傳遞,這樣會導致外部傳入的指標無法獲得內部申請的記憶體空間,
* 也就無法使用內部申請的空間內容。
*/void adduserinfo(yf_userinfo **info)
二級指標使用舉例
一 無法把指標變數本身傳遞給乙個函式 函式實參接收的實際是乙個指標變數 p 的複製,如p copy,而非指標變數本事,通過p copy可以改變p指向的變數的值,而不能改變p本身的值。eg 參考c語言深度解析4.6.2.2 include include void getmemory char p,i...
二級指標的使用例項
main函式將乙個空指標的位址 二級指標 傳入多個子函式,每個子函式都需要新增新節點,形成鍊錶,要求不改變首節點所指向的位址,typedef struct id node t id node t void test1 id node t p else return void test2 id nod...
為什麼使用二級指標
設計乙個函式 void find1 char array,char search,char pa 要求 這個函式引數中的陣列array是以 0值為結束的字串,要求在字串array中查詢與引數search給出的字元相同的字元。如果找到,通過第三個引數 pa 返回array字串中首先碰到的字元的位址。如...