コードでこのマクロを使用しても安全ですか?
#define my_calloc(x, n) ((x) = (__typeof__ (x))calloc((n), sizeof(__typeof__ (&(x)))))
私はコンパイラとしてgccを使用しています...
私のプログラムにはたくさんのメモリ割り当てポイントがあるので、これを使用します。5分前に試してみましたが、奇妙なsigabortとsigsevが表示されました。今、家に帰ります...何かが見つかったらもう一度試してみます。
いくつかのアイデア/ヒント?
追加された編集:
通常、私は次のようにマクロを使用します。
double *x;
my_calloc(x, 10);
int **y;
my_calloc(y, 30);