我是C ++的新手,我一直在读这本书。我读了几章,然后想到了自己的想法。我尝试编译下面的代码,我得到以下错误:
|| === Build:Password in Password(编译器:GNU GCC编译器)=== | /Users/Administrator/Desktop/AppCreations/C++/Password/Password/main.cpp|5|error: C ++需要所有声明的类型说明符|| ===构建 失败:1个错误,0个警告(0分钟,2秒(秒))=== |。
我不明白代码有什么问题,有人可以解释什么是错的以及如何修复它?我读了其他帖子,但我无法理解。
感谢。
#include <iostream>
using namespace std;
main()
{
string password;
cin >> password;
if (password == "Lieutenant") {
cout << "Correct!" << endl;
} else {
cout << "Wrong!" << endl;
}
}
答案 0 :(得分:3)
你需要包含字符串库,你还需要为main函数提供一个返回类型,你的实现可能需要你为main声明一个显式的return语句(如果你没有明确的话,某些实现会添加一个隐式的提供一个);像这样:
#include <iostream>
#include <string> //this is the line of code you are missing
using namespace std;
int main()//you also need to provide a return type for your main function
{
string password;
cin >> password;
if (password == "Lieutenant") {
cout << "Correct!" << endl;
} else {
cout << "Wrong!" << endl;
}
return 0;//potentially optional return statement
}
答案 1 :(得分:3)
您需要声明main的返回类型。在合法的C ++中,这应该始终为int
。在许多情况下,主要的最后一行将是return 0;
- 即成功退出。 0
以外的任何内容都用于表示错误情况。
答案 2 :(得分:0)
加一分:
如果您尝试在类中分配变量,您也会得到完全相同的错误。因为在 C++ 中,你可以在类中初始化变量,但不能在变量声明后稍后赋值,但是如果你尝试在类中定义的函数中赋值,那么它在 C++ 中工作得很好。