rand function c args

时间:2016-01-13 17:32:06

标签: c random

我有一个基于DTW(动态时间环绕)的多任务应用程序,它具有以下代码行:

void randPattern(int in[SIZE][SIZE]){
    int i,j;

    for(i=0; i<SIZE; i++){
        for(j=0; j<SIZE; j++){
            in[i][j] = abs(rand(23, 2, 100)%5000);
        }
    }
}

所以,当我尝试使用“arm-none-eabi-gcc”进行编译时,会返回:

error: too many arguments to function 'rand'

我可以做些什么来解决这个消息,或者我可以使用什么代替这个功能。 如果有人有解释...... 感谢您的关注

1 个答案:

答案 0 :(得分:0)

正如来自this articlecplusplus.com中所述,rand函数具有以下原型:

int rand (void);

你得到的int介于0和RAND_MAX之间。你必须不向函数传递任何参数。

顺便说一下,不要忘记在程序开始时通过调用来初始化函数:

srand (time(NULL));

如果您需要从数组中选择一个随机元素,this question可能是正确的搜索位置。