我是C ++的早期程序员,我想用C ++在CMD上创建一个简单的小游戏。我为什么得到
严重错误C1075:在左括号之前发现文件结尾,并且读写文件不起作用
我检查了每一行,都没发现错误。
我检查了每一行,没有发现任何错误。我没有在任何角色上看到“弯曲”的红线。也许我的眼睛错了。
std::cout << "Enter 1 to Play: ";
int play = 0;
std::cin >> play;
if (play == 1) {
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " \n";
std::cout << " +=======================================+\n";
std::cout << " || CMD Math Tester ||\n";
std::cout << " || Version 1.0 ||\n";
std::cout << " ++-------------------------------------++\n";
std::cout << " || Answer the questions. ||\n";
std::cout << " +=======================================+\n";
std::cout << " \n";
std::cout << " \n";
std::cout << "What is 2+2: ";
int answerExpected = 4;
int answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is 10+11: ";
answerExpected = 21;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is 100+200: ";
answerExpected = 300;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is 500-250: ";
answerExpected = 250;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser = answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is 5*2: ";
answerExpected = 10;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is 5*5: ";
answerExpected = 25;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is 200*5: ";
answerExpected = 1000;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is the sqrt of 16: ";
answerExpected = 4;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is the sqrt of 81: ";
answerExpected = 9;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is the absolute of 420: ";
answerExpected = 420;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "That is correct!\n";
std::cout << " \n";
std::cout << "What is the absolute of -639: ";
answerExpected = 639;
answerOfUser = 0;
std::cin >> answerOfUser;
if (answerOfUser == answerExpected) {
std::cout << "+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+\n";
std::cout << "| Congratulations |\n";
std::cout << "+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+\n";
std::cout << " \n";
std::cout << " \n";
std::cout << "You Have passed the test!\n";
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "That is wrong.\n";
}
} else {
std::cout << "Enter 1 to Play: ";
std::cin >> play;
}
答案 0 :(得分:1)
如果您看到完整的错误消息,则会得到类似
的信息。严重错误C1075:在左括号之前发现文件结尾,并且读写文件不起作用
这意味着您没有关闭足够多的块来打开它们({
比}
多)。
要解决此问题,您应该更好地缩进代码源。
诸如indent
之类的某些工具将为您完成此任务。您甚至可以找到一些工具online。
但是您的代码中还有其他问题:
main
if (answerOfUser = answerExpected)
(不是第四个问题上的=
,而不是==
)
也就是说,将代码拆分为不同的功能以提高可读性要容易得多。
由于您的游戏要问一系列问题,因此您可以从一个函数开始逐个问题...但是,这一点在https://codereview.stackexchange.com/
上有更多的位置。