スレ立てるまでもない質問はここで 123匹目at TECH
スレ立てるまでもない質問はここで 123匹目 - 暇つぶし2ch7:デフォルトの名無しさん
12/12/09 10:26:51.15
>>3
a=(char**)malloc(sizeof(char*)*2);
で、char *というポインタ値を入れる配列が2個できます。
a[0] と a[1]です。ポインタ値は(32bitでは)4bytesです。

a[1]=(char*)malloc(sizeof(char)*k);
で、charという値を入れる配列が k個できます。
a[1][0],a[1][1],,,,a[1][k-2],a[1][k-1]です。
charは、(Cの規格では)1bytesです。

> sizeof *a[1]がkをいくつにしても4になる理由がわかりません
多分 sizeof(a[1]) の事だと思いますが、a[1]は、上に書いたように
ポインタ値(4bytes)なので4になります。

ちなみに、k = 10 であれば、
> a[1][100]とかに要素数入れられるのがわからんし
これは確保した領域外へのアクセスなので、やってはいけません。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch