這裏是C文件: http://simul.iro.umontreal.ca/rng/WELL19937a.c(I未註釋,如L'Ecuyer告知)難以捉摸c函數在頭部聲明
這裏是C頭: http://simul.iro.umontreal.ca/rng/WELL19937a.h
的問題是:其中是這個double(* WELLRNG19937a)(void)在C文件中?
我看不到它。但它存在。此代碼的工作就TIGCC但產生0
#include "WELL44497a.h"
#include <tigcclib.h>
void _main(void)
{
unsigned int u=33337;
InitWELLRNG44497a(&u); //this function probably wants array of good seeds but I don't have them.
double a = WELLRNG44497a() ;
clrscr();
printf("%f",a);
ngetchx();//wait for keyboard input
}
刪除InitWELLRNG44497a(& U)使得它扔SIGSEGV(其中向我保證其它功能存在)
如果你告訴我在哪裏,我會很感激這個功能。更甚者,如果你告訴我如何使用這個功能。
PS。沒有什麼可以澄清的了。這是非常愚蠢的問題,但已被正確回答。功能一直給零的原因是不同的。
我不明白。它就在那裏,在你鏈接的C文件中。 –
這是一個函數指針,它在init函數中被初始化。 – Sneftel