我错过了什么吗?

问题描述 投票:0回答:1

我只是编写一些快速猜数字游戏代码,但我不断遇到“预期不合格的 id”错误。

我已经检查了所有分号,但也许我漏掉了一些东西?

这是我的代码:

#include <iostream>
#include <stdlib.h>  // srand

using std::cout;
using std::endl;
using std::cin;

int main(void) {
/* code goes here */
srand (time(NULL));
int number = rand() % 100+1;
int guess = 0;

cout << number << endl; /* debug */

do {
/* code goes here */
cout << "Guess a number between 1 and 100: ";
cin >> guess;

if ( guess > number ) { cout << "Too high, try again. \n" << endl;}
else if ( guess < number ) { cout << "Too low, try again. \n" << endl; }
else { cout << "That's right! \n" << endl; }

exit(0);
} // fi
while  ((number));! std:: = guess);
return (0); }
// main }`

这是错误文本:

ERROR!
/tmp/3NFruHJf2U.cpp: In function 'int main()':
/tmp/3NFruHJf2U.cpp:27:27: error: expected unqualified-id before '=' token
27 | while  ((number));! std:: = guess);
  |                           ^
c++ error-handling
1个回答
-1
投票

同时((数字));! std:: = 猜测);

上面的行显示了错误。对于 do while 循环,while 关键字后括号内的表达式是决策表达式,决定是否退出循环。

在上面一行中,退出条件决策表达式为 而((数字)); ---> 因为该行已被括号关闭,并且分号表示 while 语句已结束。 因此,分号 (;) 后面的表达式对于 while 循环退出条件没有任何意义。 所以我不明白你为什么这么写! std:: = 猜测);在分号之后。表达式末尾有一个括号。那么您是否漏掉了任何括号或中间的分号?请检查透视中的代码。

std 也是一个标准 C++ 库,它为您提供许多内置功能。为了使用 std 库的任何内置功能,我们必须以给定的格式 std:: 使用它。 例如如果你想显示一些东西来控制台,你必须使用 std 库中定义的 cout 函数,用法是 std::cout 在您的代码中,在 std:: 之后什么也看不到,我认为这在技术上是错误的。帮助我了解您想要做什么,这有助于我提供更好的建议。

谢谢, 普拉文

© www.soinside.com 2019 - 2024. All rights reserved.