Reputation: 2724
I'm new to C++ and trying to make a simple program.
But I get this error:
Undefined symbols for architecture x86_64:
"_main", referenced from:
implicit entry/start for main executable
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
[Finished in 0.4s with exit code 1]
From this code:
#include <iostream>
using namespace std;
// Lets add some global variables
int FirstNumber = 0;
int SecondNumber = 0;
int MultiNum = 0;
void MultiNumbers ()
{
cout << "Enter the first number: ";
cin >> FirstNumber;
cout << "Enter the second number: ";
cin >> SecondNumber;
// Multiply two numbers...
MultiNum = FirstNumber * SecondNumber;
// Display result
cout << "Displaying result from MultiNumbers(): ";
cout << FirstNumber << " x " << SecondNumber;
cout << " = " << MultiNum << endl;
}
int Main ()
{
cout << "This program will help you to multiply two numbers" << endl;
// Now call the function that does all the work
MultiNumbers();
cout << "Displaying from main(): ";
// This line will not compile and work because of the global variables
cout << FirstNumber << " x " << SecondNumber;
cout << " = " << MultiNum << endl;
return 0;
}
I've tried checking my compiler on sublime, compiling in terminal with g++ -o test test.cpp
But nothing seems to help.
My understanding is, I've defined MultiNumbers() above and then I'm calling it in Main()...but I seem to have missed something...
Suggestions?
Upvotes: 1
Views: 1538
Reputation: 44023
C++ is case-sensitive. This:
int Main ()
should be
int main ()
Upvotes: 5