0

で使用される「struct random_data *」のインスタンス変数が必要です

int random_r(struct random_data *buf, int32_t *result);

私は次のように宣言しようとしました

「struct random_data* instanceBuf;」
"random_data* instanceBuf;"

しかし、コンパイラはそれを好きではありません。
変数をどのように宣言すればよいですか?

-編集

ああ、API は Linux 用で、私は mac(bsd) を使用しています :(

ちょっと待って、本当に Linux だけなの? http://www.gnu.org/s/libc/manual/html_node/BSD-Random.html

4

1 に答える 1

1

おそらく:

struct random_data buff;
int x = random_r (&buff, ...);

最も簡単な解決策です。ただし、その構造が定義されていることを確認する必要があります。

また、バッファが (シードのように) 長く存続する必要がある場合は、大きなスコープ (たとえば、グローバルまたはクラス レベル) で定義されていることを確認してください。

于 2011-02-24T06:09:38.710 に答える