我正在尝试使用 rand、srand 和 time 在 CI 中使用 DEVC++ 生成随机(足够)数字。我收到以下错误:[Linked Error] undefined reference to 'gettimeofday' 错误
这是我的代码:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <sys/time.h>
static unsigned long next = 1;
int myrand(void) {
next = next * 1103515245 + 12345;
return((unsigned)(next/65536) % 32768);
}
void mysrand(unsigned seed) {
next = seed;
}
struct {
long tv_sec;
long tv_usec;
}timeval ;
int main(){
int num=0; //random number
struct timeval t1;
gettimeofday(&t1, NULL);
srand(t1.tv_usec * t1.tv_sec);
arg_num=rand();
printf("Number of arguments is:%d\n",arg_num);
}
进行在线研究时,我发现 DEVC++(不知何故)包括 GNU 编译器,但它并没有真正使用它,导致无法识别所有“通用”函数。除了解决链接错误之外,我想知道在 Windows 中是否有一个使用 GNU 的 C 编程 IDE,或者不会产生此类问题。