二級指標記憶體模型(一)

2022-03-19 10:48:53 字數 1141 閱讀 3531

二級指標做輸入

#include#include

#include

int getmem(char **myp1,int *mylen1,char **myp2,int *mylen2)

strcpy(tmp1,

"abcdefg");

*mylen1 =strlen(tmp1);

*myp1 =tmp1;

tmp2 = (char *)malloc(100

);

if(tmp2 ==null)

strcpy(tmp2,

"abcdefg");

*mylen2 =strlen(tmp2);

*myp2 =tmp2;

return0;

}int getmem_free(char **myp1)

tmp = *myp1;

free

(tmp);

*myp1 =null;

return0;

}int

main()

二級指標做輸入,利用指標改變指標指向內容

#include#include

#include

void printmyarray(char **myarray,int

num)

}void sortmyarray(char **myarray,int

num)}}

}int

main()

; num = sizeof(myarray)/sizeof(myarray[0

]); printmyarray(myarray,num);

sortmyarray(myarray,num);

printf(

"after sort\n");

printmyarray(myarray,num);

return0;

}

如果將main函式中的字串陣列宣告修改為

char myarray[10][30] = ;

此時,在傳入列印和排序的函式中仍然使用char ** myarray 來宣告形參的話,會出現報錯,原因是指標的步長不一樣,而且指標指向的記憶體空間資料型別也不一樣。

C語言 二級指標記憶體模型

二級指標第一種記憶體模型 include include 說明 類似於int a 5 陣列名a是一維陣列a中首元素的指標 我自認為此假設可應用於多維陣列與指標 二級指標的主要功能是修改一級指標的值 列印一維陣列 int printarr char pin,int num 列印二級指標陣列 int i...

C語言 二級指標記憶體模型

二級指標記憶體模型 define crt secure no warnings include include include 記憶體模型詳解 一維陣列型別是 typedef int myarr 5 myarr a 其中myarr是一維陣列型別 myarr p p是一維陣列的指標 是一維陣列的指標的...

二級指標的記憶體模型小結

the start 此處定義 主調函式分配記憶體,稱之為輸入 被調函式分配記憶體,稱之為輸出 指標是為記憶體服務的。二級指標做輸入 第一種型別 include stdio.h include stdlib.h include string.h intprintfstr char str,int st...