error C2082: redefinition of formal parameter

Jan 29, 2012 at 2:39am
I can't figure out what I am doing wrong can anyone out there help please. I am including my code as well as the compilier error.

#include <iostream>
#include <iomanip>
#include <string>
using namespace std;

// prototypes
int readDials( int &, int &, int &, int &, int &, int &, int &, int & );
int ToDigit ( int, int, int, int, int, int, int, int );
void Call ( int, int, int, int, int, int, int, int );

int main()
{
// Declare variables
int n1, n2, n3, n4, n5, n6, n7, n8;
int returnValue = 0;

while (returnValue != -5)
{
returnValue = readDials ( n1, n2, n3, n4, n5, n6, n7, n8);
switch (returnValue)
{
//Return error codes
case -1: cout << "ERROR - An invalid character was entered" << endl; break;
case -2: cout << "ERROR - Phone number cannot begin with 0" << endl; break;
case -3: cout << "ERROR - Phone number cannot begin with 555" << endl; break;
case -4: cout << "ERROR - Hyphen is not in the correct position" << endl; break;
case -5: cout << " Bye for now! " << endl; break;
default: Call ( n1, n2, n3, n4, n5, n6, n7, n8);
}
}
return 0;
}

int readDials ( int n1, int n2, int n3, int n4, int n5, int n6, int n7, int n8 )
{
char q, Q;
int n1, n2, n3, n4, n5, n6, n7, n8;
//Input phone number and process
cout << "Enter the phone number or Q to quit. ";
cin >> n1>> n2 >> n3 >> n4 >> n5 >> n6 >> n7 >> n8;;
if (n1 == q || n1 == Q)
return -5;
//cout << "Please enter the entire number " << endl;
//cin >> n1 >> n2 >> n3 >> n4 >> n5 >> n6 >> n7 >> n8;
int result = ToDigit (n1, n2, n3, n4, n5, n6, n7, n8);
if(result == -1)
return -1;
if(result == -2)
return -2;
if(result == -3)
return -3;
if(result == -4)
return -4;
else if ( result != -1 || result != -2 || result != -3 || result != -4)
return -5;
}
int ToDigit (int nn1, int nn2, int nn3, int nn4, int nn5, int nn6, int nn7, int nn8)
{
if(nn1 == 5 && nn2 == 5 && nn3 == 5)
return -3;
if (nn1 == 0)
return -2;
if (nn4 != '-')
return -4;
switch ( nn1, nn2, nn3, nn4, nn5, nn6, nn7, nn8)
{
case 'a':
cout << "2";
break;
case 'A':
cout << "2";
break;
case 'b':
cout << "2";
break;
case 'B':
cout << "2";
break;
case 'c':
cout << "2";
break;
case 'C':
cout << "2";
break;
case 'd':
cout << "3";
break;
case 'D':
cout << "3";
break;
case 'e':
cout << "3";
break;
case 'E':
cout << "3";
case 'f':
cout << "3";
break;
case 'F':
cout << "3";
break;
case 'g':
cout << "4";
break;
case 'G':
cout << "4";
break;
case 'h':
cout << "4";
break;
case 'H':
cout << "4";
break;
case 'i':
cout << "4";
break;
case 'I':
cout << "4";
break;
case 'j':
cout << "5";
break;
case 'J':
cout << "5";
break;
case 'k':
cout << "5";
break;
case 'K':
cout << "5";
break;
case 'l':
cout << "5";
break;
case 'L':
cout << "5";
break;
case 'm':
cout << "6";
break;
case 'M':
cout << "6";
break;
case 'n':
cout << "6";
break;
case 'N':
cout << "6";
break;
case 'o':
cout << "6";
break;
case 'O':
cout << "6";
break;
case 'p':
cout << "7";
break;
case 'P':
cout << "7";
break;
case 'q':
cout << "7";
break;
case 'Q':
cout << "7";
break;
case 'r':
cout << "7";
break;
case 'R':
cout << "7";
break;
case 's':
cout << "7";
break;
case 'S':
cout << "7";
break;
case 't':
cout << "8";
break;
case 'T':
cout << "8";
break;
case 'u':
cout << "8";
break;
case 'U':
cout << "8";
break;
case 'v':
cout << "8";
break;
case 'V':
cout << "8";
break;
case 'w':
cout << "9";
break;
case 'W':
cout << "9";
break;
case 'x':
cout << "9";
break;
case 'X':
cout << "9";
break;
case 'y':
cout << "9";
break;
case 'Y':
cout << "9";
break;
case 'z':
cout << "9";
break;
case 'Z':
cout << "9";
break;
return 0;
}
}
void Call(int n1, int n2, int n3, int n4, int n5, int n6, int n7, int n8)
{
//Final output
cout << " The phone number dialed is " << n1 << n2 << n3 << n4 << n5 << n6 << n7 << n8 << endl;

}

Compiler error
1>------ Rebuild All started: Project: test, Configuration: Debug Win32 ------
1>Build started 1/28/2012 6:35:18 PM.
1>_PrepareForClean:
1> Deleting file "Debug\test.lastbuildstate".
1>InitializeBuildStatus:
1> Touching "Debug\test.unsuccessfulbuild".
1>ClCompile:
1> test.cpp
1>\\test.cpp(44): error C2082: redefinition of formal parameter 'n1'
1>\test.cpp(44): error C2082: redefinition of formal parameter 'n2'
1>test.cpp(44): error C2082: redefinition of formal parameter 'n3'
1\test.cpp(44): error C2082: redefinition of formal parameter 'n4'
1>\test.cpp(44): error C2082: redefinition of formal parameter 'n5'
1>test.cpp(44): error C2082: redefinition of formal parameter 'n6'
1>test.cpp(44): error C2082: redefinition of formal parameter 'n7'
1>test.cpp(44): error C2082: redefinition of formal parameter 'n8'
1>
1>Build FAILED.
1>
1>Time Elapsed 00:00:00.85
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

Last edited on Jan 29, 2012 at 3:06am
Jan 29, 2012 at 2:56am
closed account (o1vk4iN6)
Well I can tell you one thing, that your code isn't very readable and looks like it took you a long time to write the same thing over and over.


You'll probably run into an error here eventually, either that this doesn't do what you think it does.
 
switch ( nn1, nn2, nn3, nn4, nn5, nn6, nn7, nn8)


Also use code tags in your code, it numbers your code so it might actually help with where the error is.

Also you can save some lines by doing this:
1
2
3
4
switch( tolower(c) )
{
     case 'a': case 'b': case 'c': cout << 2; break;
}

Last edited on Jan 29, 2012 at 3:00am
Topic archived. No new replies allowed.