Obtenez cette erreur en C++, "no match for 'operator>>' dans 'std:cin.std
#include <iostream>
int main()
{
using std::cout;
using std::endl;
using std::cin;
short width;
short legnth;
short height;
short volume;
volume = (legnth * width * height);
cout << "This program will determine the volume of a cube" << endl;
cout << "Enter the legnth of the cube: ";
cin >> legnth >> endl;
cout << "Enter the width of the cube: ";
cin >> width >> endl;
cout << "Enter the height of the cube: ";
cout << "Your volume is: " << volume;
cout << "Press any key to exit :)";
cin.get();
return 0;
Je suis novice en C++ et dans ma base de programmation informatique de la classe, nous avons dû faire quelque chose qui peut calculer le volume, quelqu'un peut-il m'aider à corriger cette erreur?
}
Vous devez vous connecter pour publier un commentaire.
std::endl
est utilisé pour les flux de sortie pas de flux d'entrée. Je dirais avec que si elle fait sens pour les débutants, parce que vous pouvez mettre de saut de ligne (et la plupart du temps si vous voulez attraper l'entrée de l'utilisateur) dans le flux d'entrée, maisstd::endl
tout simplement ne fonctionne pas avecstd::cin
.D'ailleurs je crois que vous n'avez pas vraiment besoin de le faire, parce que quand vous appuyez sur la touche "Enter" pour confirmer votre entrée caractère de saut de ligne est également en cours d'impression de flux de sortie.
Vous ne pouvez pas extraire de
cin
àendl
- qui n'a pas de sens. Vous utilisezendl
avec les flux de sortie pour insérer un saut de ligne et de vider le flux. Il suffit de retirer le>> endl
s.Aussi, vous avez orthographié
length
de manière incorrecte.