K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>C言語では、「配列へのポインタ」は関数の戻り値にはできないのでしょうか? >>VisualC++でやってみたのですが、無理でした。 > >できない理由は特にないので、普通にできます。以下、掛け算九九の表をmalloc()で >確保するプログラムです(これは「普通」には見えない、というならまあもっともですが)。 > >#include <stdio.h> >#include <stdlib.h> > >int (*alloc99(void))[9] >{ > return malloc(sizeof(int) * 81); >} > >int main(void) >{ > int (*array99)[9]; > int i, j; > > array99 = alloc99(); > > for (i = 1; i < 10; i++) { > for (j = 1; j < 10; j++) { > array99[i - 1][j - 1] = i * j; > } > } > > for (i = 1; i < 10; i++) { > for (j = 1; j < 10; j++) { > printf("\t%d", array99[i - 1][j - 1]); > } > printf("\n"); > } >} > >ただ、 > >>"func()[0].hoge"みたいなことがやってみたかったのですが、C言語では無理なのでしょうか。 > >上記のやってみたいことからすると、そもそもやりたいことは「配列へのポインタ」を >返すことではないようにも思えます。"func()[0].hoge"と書きたいのなら、やりたいことは、 >「構造体へのポインタ」を返すことではないでしょうか。 >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!