C 预期标识符或';(';之前';';代币

C 预期标识符或';(';之前';';代币,c,compiler-errors,C,Compiler Errors,我正在构建一段实现mersenne twister随机无符号长生成器的代码,以模拟老虎机。当我在main中声明变量时,我得到以下错误代码: 错误:应为标识符或“&”标记之前的“(” int main() { int window1 = 0, window2 = 0, window3 = 0; unsigned long &random1, &random2, &random3; /* error code on this line */ ...

我正在构建一段实现mersenne twister随机无符号长生成器的代码,以模拟老虎机。当我在main中声明变量时,我得到以下错误代码: 错误:应为标识符或“&”标记之前的“(”

int main()
{
    int window1 = 0, window2 = 0, window3 = 0;
    unsigned long &random1, &random2, &random3; /* error code on this line */
    ...
    mersenneTwister(&random1, &random2, &random3); /* calls a subroutine named mersenneTwister */
    ...
    return 0;
}

子例程运行良好;我通过自己运行它来测试它,唯一的错误是一个声明行。

不要在声明中使用&运算符。更改为:

    unsigned long random1, random2, random3; /* error code on this line */

调用函数时使用
&
运算符来提供指向这些变量的指针,可能是为了让
MersenneTwister
函数填充。变量本身是普通的无符号长对象。

是否试图声明指针?在该上下文中使用
'&
没有意义可为&random1,这是无效的名称。