[2341] Re:関数の戻り値について
投稿者:mhash
2023/08/05 14:51:51
ご返事ありがとうございます。
>できない理由は特にないので、普通にできます。以下、掛け算九九の表をmalloc()で
>確保するプログラムです(これは「普通」には見えない、というならまあもっともですが)。
サンプルコードまで示して回答していただきまして大変感激です。ありがとうございます。
私が試したときは『int (*alloc99(void))[9]』の部分を『(int(*)[9]) alloc99(void)』のように書いてしまっていました(キャストの構文と混同していたようです)。確かにお見せいただいたコードなら「配列へのポインタを関数」の宣言になっていますね。
>ただ、
>
>>"func()[0].hoge"みたいなことがやってみたかったのですが、C言語では無理なのでしょうか。
>
>上記のやってみたいことからすると、そもそもやりたいことは「配列へのポインタ」を
>返すことではないようにも思えます。"func()[0].hoge"と書きたいのなら、やりたいことは、
>「構造体へのポインタ」を返すことではないでしょうか。
これはまったくご指摘の通りです。
投稿してから気づいたのですが、訂正前に回答が来てしまってお恥ずかしい限りです……