cin.get 的 C++ 结构

C++ structure with cin.get

我是新来的!

我是编程初学者。现在我在做我书中的一些练习,我有疑问 - 为什么在

cin.get(ps->volume);

告诉我错误?这是我的全部代码:

#include <iostream>

using namespace std;

struct inflatable //definicja struktury
{
   char name[20];
   float volume;
   double price;
};

int main()
{
   inflatable *ps = new inflatable; //alokacja pamieci na strukture, dynamiczne
   cout << "Podaj nazwe dmuchanej zabawki: ";
   cin.get(ps->name,20); //metoda pierwsza dostepu do pól
   cout << "Podaj objetosc w centymetrach: ";
   //cin >> (*ps).volume; //metoda druga dostepu do pól
   cin.get(ps->volume);
   cout << "Podaj cene (zl): ";
   cin >> ps->price;
   cout << "Nazwa: " << (*ps).name << endl;
   cout << "Objetosc: " << ps->volume << " centymetrow." << endl; //metoda 1
   cout << "Cena: " << ps->price << " zl." << endl; //metoda 1
   delete ps;

   return 0;
}

我知道这条线不错

//cin >> (*ps).volume; //metoda druga dostepu do pól

但我想了解为什么我不能在 post 的开头使用行。

嗯,cin.get() 用于字符。 声明的体积有一个浮点数,所以它应该是:

cin>>ps->volume;