2017-03-07 26 views
-2

我发现声明有困难。在C++中使用&&的声明和初始化

请看我在写什么。

int choice:>=1&&<=100 

通过书面方式在上述我希望在用户将输入一个选择,从(1-100)开始从1-100意义将输入的任何整数的代码以后使用。

然而书面方式上述声明和初始化,当我 得到埃罗messageL

38 15 G:\欢迎Message.cpp [错误] 之前预期初始化 ':>' 令牌

可以单独解释为什么我得到错误,以及如何正确地写入上面的声明和初始化。

+1

我认为你需要问你的老师的帮助(如果适用)或阅读[好C++的书(http://stackoverflow.com/questions/388242/the-definitive-c-book-guide -and列表)。 – qxz

+1

除了答案中提到的问题,':>'是一个**有向图**;本质上,它被替换为单个字符']'。 –

回答

1
int choice:>=1&&<=100. 

你并不真正“比较”任何东西。当你这样做时,你想要做的是,是否选择大于或等于1,并且选择小于或等于100.你的代码说的更“人性化”,更自然。 IS选择大于或等于1,AND小于或等于1。但请记住,我们的电脑是非常愚蠢的,所以你需要更精确地声明它,像这样......

choice >= 1 && choice <= 100 

此外,请务必到别的地方申报的选择。像这样......

int choice = 5; 
... 
if(choice >= 1 && choice <= 100){ 
    ... 
} 
3

您已经混淆了数据类型声明,用户输入和范围测试。这些不是神奇的C++语句 - 它们是三个独立的东西。

int choice; 
if(std::cin >> choice && choice >= 1 && choice <= 100) 
{ 
    std::cout << "Valid choice: " << choice << std::endl; 
} 
else 
{ 
    std::cout << "Invalid choice" << std::endl; 
}