2017-10-18 4 views
-3

Je construis un menu simple que l'utilisateur peut sélectionner. Pour quelque raison que ce soit|| ne fonctionne pas si autre C++

else if (letterSelect == "C" || letterSelect = "c") 

Le || vient avec une erreur. L'autre || fonctionne bien. L'erreur est: pas d'opérateur "||" correspond à ces opérandes. les types d'opérandes sont; bool || std :: string

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

int main() 
{ 


cout << "********* General Purpose Calculator Program ***************\n" 
    << "Please Select an Option by inputting its associated letter\n" 
    << "A) Determine Highest of Three Numbers\n" 
    << "B) Reverse a Number\n" 
    << "C)Calculate Parking Garage Charges\n" 
    << "D) Exit\n"; 

string letterSelect = " "; 


cin >> letterSelect; 

if (letterSelect == "A" || letterSelect == "a") 

{ 

    //call program listed for A; 

} 

else if (letterSelect == "B" || letterSelect == "b") 

{ 

    //call program listed for B; 

} 

else if (letterSelect == "C" || letterSelect = "c") 

{ 

    //call program listed for C; 

} 

else (letterSelect == "D" || letterSelect == "d"); 


    cout << "Exiting..."; 


} 
+0

letterSelect = "c" doit être letterSelect == "c" –

Répondre

1

ici:

else if (letterSelect == "C" || letterSelect = "c") 

Il vous manque = dans la deuxième partie de l'état. Il devrait être letterSelect == "c"

1

Juste une faute de frappe. Le côté droit du '||' dans votre code est une affectation (=), pas un contrôle d'égalité (==).

1

La ligne de code

letterSelect = "c" 

est une opération d'affectation au lieu d'une comparaison. Changez-le en

letterSelect == "c" 

Et cela devrait fonctionner.

Bonne codification.