C++ 在'之前预期的主要表达/';代币

C++ 在'之前预期的主要表达/';代币,c++,C++,下面是一段代码,我从中得到了我的错误 #include <iostream> #include <iomanip> #include <ctime> #include <cstdlib> using namespace std; #define RAND_MAX #define LWBND 0.0 #define UPBND 100.0 const int ARMAX = 100; const int NUMperLINE = 7; c

下面是一段代码,我从中得到了我的错误

#include <iostream>
#include <iomanip>
#include <ctime>
#include <cstdlib>

using namespace std;

#define RAND_MAX
#define LWBND   0.0
#define UPBND   100.0
const int ARMAX = 100;
const int NUMperLINE = 7;
const int ARMIN = 20;

double randDouble()
    {
    srand(0);
    int num = rand();
    LWBND + ( num / ( RAND_MAX / ( UPBND - LWBND )))

    return double;
    }
#包括
#包括
#包括
#包括
使用名称空间std;
#定义RAND_MAX
#定义LWBND 0.0
#定义上行100.0
常数int ARMAX=100;
常数int NUMperLINE=7;
常数int ARMIN=20;
双随机双()
{
srand(0);
int num=rand();
LWBND+(num/(RAND_MAX/(向上-LWBND)))
双倍回报;
}

该错误发生在函数返回之前的公式中。它说它希望在第二个“/”之前,就在RAND_MAX之后有一个主要功能。这里有人能帮我吗?

RAND_MAX的定义是什么?请记住,预处理器的工作原理与编辑器中的“查询替换”类似,它用宏体替换宏。现在想想如果正文为空(不存在)会发生什么情况。您的return语句之前的(无用表达式-)语句中也缺少一个分号,一旦您修复了当前遇到的分号,这将导致另一个编译时错误。感谢您对分号的建议,我完全没有注意到这一点。至于如何正确定义RAND_MAX,我不知道该怎么做。我的指导老师除了在顶部包含define语句外,从来没有讨论过如何定义。@MattV提示:
。您的
#define
正在破坏该定义。建议:删除您的定义。@Someprogrammerdude
RAND_MAX
cstdlib
定义。由于试图重新定义宏,OP的代码应引发错误。