首页 > 解决方案 > 我如何在 C++ 中修复这个操作符错误?

问题描述

#include <conio.h>
#include <iostream>
#include <stdlib.h>
#include <math.h>
#include <string.h>
using namespace std;

struct data{
char tanggal[20],kode[20],nama[20];
int jumlah[20],harga[20];
int modal[20]={jumlah[20]*harga[20]};
};
data batas[100];
int a,b,c,d;

void inputdata(){
   cout<<"\nJumlah Data Yang Akan diinput (max 10) : ";
   cin>>b;
   d=0;
   for(c=0;c<b;c++){
   d=d+1;
   cout<<"\nData ke-"<<d<<endl;
   cout<<"Tanggal Produksi\t: ";
   cin>>batas[a].tanggal;
   cout<<"Kode Produk\t: ";
   cin>>batas[a].kode;
   cout<<"Nama Produk\t: ";
   cin>>batas[a].nama;
   cout<<"Jumlah Produksi\t: ";
   cin>>batas[a].jumlah;
   cout<<"Harga Pokok Penjualan (HPP)\t: ";
   cin>>batas[a].harga;
   cout<<"Modal\t: ";
   cout<<batas[a].modal;
   cout<<endl;
   a++;
   }
   getch();
   system("cls");
   }

那是我的代码,这是我得到的错误

[Error] no match for 'operator>>' (operand types are 'std::istream {aka std::basic_istream<char>}' and 'int [20]')

如何解决?

标签: c++

解决方案


你不能 std::cout << int 数组你必须对数组中的每个元素使用 for 循环我知道我不应该判断你的代码,但请在使用 {} 时尝试使用空格


推荐阅读