ポインタのポインタの必要性
書物によるとポインタのポインタの使用例として「ポインタの配列」はポインタを使ってアクセスすることができます。」[*]とありますが、どうしてポインタのポインタが必要なのかがいまいちピンと来ません。
どういう場合なのかを知りたく思っています。
[*]サンプルスクリプト
=====================================================
char *mnthp[3] = {/* ポインタの配列の宣言 */
"January", "February", "March"
};
char **p1;/* 「ポインタのポインタ」の宣言 */
int i, j;
p1=mnthp;/* 「ポインタのポインタ」にポインタの配列 */
/* の先頭番地を設定 */
/***** 例1 *****/
for (i = 0; i < 3; i++) {/* 「ポインタのポインタ」の値を変えずに */
printf("%s\n", *(p1 + i));/* 相対的に文字列を出力 */
}
==> このようなことをしなくとも
printf("%s", mnthp[i]); で値を参照出来ると思われる。
=====================================================
[*] http://www9.plala.or.jp/sgwr-t/c/sec10-4.html
宜しくお願い致します。
お礼
ありがとうございます。