Also ich bin neu in der Programmierung und das ist Teil einer Universität Engineering-Programm. Ich habe beschlossen, Spaß zu haben und etwas außerhalb des Unterrichts zu schreiben. Ich versuche, ein Programm in C++ zu schreiben, das dem Benutzer erlaubt, 3 Werte für Länge, Breite und Höhe eines rechteckigen Prismas einzugeben und das Programm wird die 3 Werte verwenden, um die Oberfläche und das Volumen des Prismas zu berechnen.Fehler: keine Übereinstimmung für 'operator *' (Operandentypen sind 'std:: string {aka std basic_string <char>}' und {aka std basic_string <char>} ')
Das ist was ich bisher habe. (Geschrieben in Vocareum)
//---------------------------------------------------------------------------------------//
//Calculate rectangular prism//
//---------------------------------------------------------------------------------------//
#include <string>
#include <iostream>
using namespace std;
int main()
{
string length; // length of prism in cm
string width; // width of prism in cm
string height; // height of prism in cm
cout << "Please enter the length, width, and height of the rectangular prism." << endl;
cin >> length; //length of prism in cm
cin >> width; //width of prism in cm
cin >> height; //height of prism in cm
double volume; //volume of prism in cm^3
double sa; //surface area of prism in cm^2
volume = length * width * height;
sa = (length * width * 2) + (width * height * 2) + (height * length * 2);
cout << "The volume of the rectangular prism is " << volume << " cm^3." << endl;
cout << "The surface area of the rectangular prism is " << sa << " cm^2." << endl;
return 0;
}
//Whenever I try to compile, I'll get 4 error messages that reads
//"error: no match for 'operator*' (operand types are 'std: :string {aka std basic_string<char>}' and {aka std basic_string<char>}')
//ps these 3 comments aren't in the code
Wie kann ich es beheben?
Ich würde auch schreiben neigen: 'cin >> Länge >> Breite >> Höhe;' und 'const doppeltes Volumen = Länge * width * height; '- bevorzugt, Variablen zu initialisieren, ihnen nicht zuzuordnen, und die Dinge lieber const zu deklarieren, wo es möglich ist. –