Solved

error

Posted on 2000-04-22
10
506 Views
Last Modified: 2008-03-03
what does this mean?

error C2562: 'main' : 'void' function returning a value: see declaration of 'main'
//these are the lines it pointed to.
char c();

cout.flush();
cout << "Waiting 5 seconds...";
Sleep( 5000 ); // does nothing here
return c();

0
Comment
Question by:nationnon
  • 6
  • 4
10 Comments
 

Accepted Solution

by:
AntBon earned 80 total points
ID: 2739839
I believe this to mean, that you have declared your 'main' part of the program to return void (ie nothing),but the last line of you code appears to be (or at least trying to) return a value.

Try changing to just 'return'
0
 
LVL 1

Author Comment

by:nationnon
ID: 2741432
Adjusted points from 10 to 50
0
 
LVL 1

Author Comment

by:nationnon
ID: 2741433
it didn't work , can you see anything in this code that would cause an error?  It's still giving me the

error C2562: 'main' : 'void' function returning a value
see declaration of 'main'

Oh and could you give me an example of how arrays would be used for the names in this program?  



0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LVL 1

Author Comment

by:nationnon
ID: 2741437
#include <iostream.h>
#include <windows.h>

double deduction()                  
{

//variable definitions

const double sTaxPct = .08;
const double fTaxPct = .32;
const double miscPct = .20;
return (sTaxPct + fTaxPct + miscPct);

}//end calculation function
void main()

// Declare and define variables
{
char fEfirstName[10];
char fElastName[10];
char sEfirstName[10];
char sElastName[10];
double fEgPay;
double fEnPay;
double sEgPay;
double sEnPay;
double fErate;
double fEhrs;
double sErate;
double sEhrs;

char c();

cout.flush();
cout << "Waiting 5 seconds...";
Sleep( 5000 ); // does nothing here
return
//end of sleep function



//User entered information

      cout <<"Enter first employee's last name: ";
      cin >> fElastName;
      cout <<"Enter first employee's first name: ";
      cin >> fEfirstName;
      cout <<"Enter first employee's pay rate: ";
      cin >> fErate;
      cout <<"Enter first employee's hours: ";
      cin >> fEhrs;
      cout << "Enter second employee's last name: ";
      cin >> sElastName;
      cout << "Enter second employee's first name: ";
      cin >> sEfirstName;
      cout << "Enter second employee's hours: ";
      cin >> sEhrs;
      cout << "Enter second employee's rate: ";
      cin >> sErate;

// employee hours * rate & netpay deduction
fEgPay = fErate * fEhrs;
sEgPay = fErate * sEhrs;
fEnPay = sEgPay * deduction();
sEnPay = sEgPay * deduction();

// ask user which employee they want to view
int nEmployee;


 cout << "Choose Employee 1 or 2: ";
  cin >> nEmployee;
 


if (nEmployee<=1)
      cout << fEfirstName << " " << fElastName << "'s gross pay was " << fEgPay << " "<< "but after deductions the pay is now " << fEnPay << endl;
    cout << c() << endl;
if (nEmployee>=2)
      cout << sEfirstName << " " << sElastName << "'s gross pay was " << sEgPay << " " << "but after deductions the pay is now " << sEnPay << endl;      
      cout << c() << endl;
while (nEmployee==1 || nEmployee==2);
}
0
 
LVL 1

Author Comment

by:nationnon
ID: 2741444
Adjusted points from 50 to 80
0
 

Expert Comment

by:AntBon
ID: 2741581
I have done some little changes, i not sure what you were tring to do on the last line of the code - so i had a guess


#include <iostream.h>
#include <windows.h>

double deduction()
{

//variable definitions

const double sTaxPct = .08;
const double fTaxPct = .32;
const double miscPct = .20;
return (sTaxPct + fTaxPct + miscPct);

}//end calculation function



void main()

// Declare and define variables
{
char fEfirstName[10];
char fElastName[10];
char sEfirstName[10];
char sElastName[10];
double fEgPay;
double fEnPay;
double sEgPay;
double sEnPay;
double fErate;
double fEhrs;
double sErate;
double sEhrs;
int nEmployee;

//char c();


cout.flush();
cout << "Waiting 5 seconds...";
Sleep( 5000 ); // does nothing here
// return
//end of sleep function



//User entered information

cout <<"Enter first employee's last name: ";
cin >> fElastName;
cout <<"Enter first employee's first name: ";
cin >> fEfirstName;
cout <<"Enter first employee's pay rate: ";
cin >> fErate;
cout <<"Enter first employee's hours: ";
cin >> fEhrs;
cout << "Enter second employee's last name: ";
cin >> sElastName;
cout << "Enter second employee's first name: ";
cin >> sEfirstName;
cout << "Enter second employee's hours: ";
cin >> sEhrs;
cout << "Enter second employee's rate: ";
cin >> sErate;

// employee hours * rate & netpay deduction
fEgPay = fErate * fEhrs;
sEgPay = fErate * sEhrs;
fEnPay = sEgPay * deduction();
sEnPay = sEgPay * deduction();

// ask user which employee they want to view

cout << "Choose Employee 1 or 2: ";
cin >> nEmployee;



if (nEmployee<=1)
cout << fEfirstName << " " << fElastName << "'s gross pay was " << fEgPay << " "<< "but after deductions the pay is now " << fEnPay << endl;
    cout <<  endl;
if (nEmployee>=2)
cout << sEfirstName << " " << sElastName << "'s gross pay was " << sEgPay << " " << "but after deductions the pay is now " << sEnPay << endl;
cout  << endl;
getchar(); //wait for keypress so we can see output
return;
//while (nEmployee==1 || nEmployee==2);
}
0
 

Expert Comment

by:AntBon
ID: 2741607
Ok i have added an example of how to use array. Note this is not particularly good, but it works.


#include <iostream.h>
#include <windows.h>

double deduction()
{

//variable definitions

const double sTaxPct = .08;
const double fTaxPct = .32;
const double miscPct = .20;
return (sTaxPct + fTaxPct + miscPct);

}//end calculation function



void main()

// Declare and define variables
{

char EfirstName[50] [10];
char ElastName[50] [10];
//char sEfirstName[10];
//char sElastName[10];
double EgPay[50];
double EnPay[50];
//double sEgPay;
//double sEnPay;
double Erate[50];
double Ehrs[50];
//double sErate;
//double sEhrs;
int nEmployee;

//char c();


cout.flush();
cout << "Waiting 5 seconds...";
Sleep( 5000 ); // does nothing here
// return
//end of sleep function



//User entered information

cout <<"Enter first employee's last name: ";
cin >> ElastName[0];
cout <<"Enter first employee's first name: ";
cin >> EfirstName[0];
cout <<"Enter first employee's pay rate: ";
cin >> Erate[0];
cout <<"Enter first employee's hours: ";
cin >> Ehrs[0];
cout << "Enter second employee's last name: ";
cin >> ElastName[1];
cout << "Enter second employee's first name: ";
cin >> EfirstName[1];
cout << "Enter second employee's hours: ";
cin >> Ehrs[1];
cout << "Enter second employee's rate: ";
cin >> Erate[1];

// employee hours * rate & netpay deduction
EgPay[0] = Erate[0] * Ehrs[0];
EgPay[1] = Erate[1] * Ehrs[1];
//sEgPay[0] = fErate * sEhrs;
EnPay[0] = EgPay[0] * deduction();
EnPay[1] = EgPay[1] * deduction();
//sEnPay = sEgPay * deduction();

// ask user which employee they want to view

cout << "Choose Employee 1 or 2: ";
cin >> nEmployee;



if (nEmployee<=1)
cout << EfirstName[0] << " " << ElastName[0] << "'s gross pay was " << EgPay[0] << " "<< "but after deductions the pay is now " << EnPay[0] << endl;
    cout <<  endl;
if (nEmployee>=2)
cout << EfirstName[1] << " " << ElastName[1] << "'s gross pay was " << EgPay[1] << " " << "but after deductions the pay is now " << EnPay[1] << endl;
cout  << endl;
getchar(); //wait for keypress so we can see output
return;
//while (nEmployee==1 || nEmployee==2);
}



I declared an array of 50 elements,but have only used the 1st 2 elements (like you previously had) you will need to employ some looping mechanism, to loop through these when printing out the text.

I hope this helps
0
 
LVL 1

Author Comment

by:nationnon
ID: 2742175
It's saying getchar() is an undeclared identifier, how would I fix that?
0
 

Expert Comment

by:AntBon
ID: 2743266
You could try getch()
0
 
LVL 1

Author Comment

by:nationnon
ID: 2743364
That was some sort of type-o, i'm sorry it is getch().
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When writing generic code, using template meta-programming techniques, it is sometimes useful to know if a type is convertible to another type. A good example of when this might be is if you are writing diagnostic instrumentation for code to generat…
This article will show you some of the more useful Standard Template Library (STL) algorithms through the use of working examples.  You will learn about how these algorithms fit into the STL architecture, how they work with STL containers, and why t…
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The viewer will learn how to user default arguments when defining functions. This method of defining functions will be contrasted with the non-default-argument of defining functions.

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question