Error: C++ requires a type specifier for all declarations

Total
0
Shares

I’m new to C++ and I’ve been reading this book. I read a few chapters and I thought of my own idea. I tried compiling the code below and I got the following error:

||=== Build: Debug in Password (compiler: GNU GCC Compiler) ===|
/Users/Administrator/Desktop/AppCreations/C++/Password/Password/main.cpp|5|error:
C++ requires a type specifier for all declarations| ||=== Build
failed: 1 error(s), 0 warning(s) (0 minute(s), 2 second(s)) ===|.

I don’t understand what is wrong about the code, might anyone explain what’s wrong and how to fix it? I read the other posts but I was unable to understand it.

Thanks.

#include <iostream>

using namespace std;

main()
{
    string password;
    cin >> password;
    if (password == "Lieutenant") {
        cout << "Correct!" << endl;
    } else {
        cout << "Wrong!" << endl;
    }

}

Solution

You need to include the string library, you also need to provide a return type for your main function and your implementation may require you to declare an explicit return statement for main (some implementations add an implicit one if you don’t explicitly provide one); like so:

#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
}

Source: StackOverflow.com

Leave a Reply

Your email address will not be published. Required fields are marked *