注册 登录
编程论坛 VC++/MFC

2440: '=' : cannot convert from 'char *' to 'char'

zknever 发布于 2011-05-03 16:00, 738 次点击
什么意思
4 回复
#2
fangdong652011-05-03 16:22
不能将一个指向char指针类型的数据赋值给char型变量,你检查一下你错误的那一行“=”两边数据类型是否相同
#3
zknever2011-05-03 17:30
#include<iostream>
#include   <string>
using namespace std;
void input(int n,int *p1,int *p2,int *p3,string *s)
{
    int i=0;
    for(i=0;i<n;i++)
    {
        cin >>p1[i];
    }
    for(i=0;i<n;i++)
    {
        cin >>p2[i];
    }
    for(i=0;i<n;i++)
    {
        cin >>p3[i];
    }
    for(i=0;i<n;i++)
    {
       getline(s[i]);
    }
}
void output(int n,int *p1,int *p2,int *p3,string *s)
{
}
int main()
{
    int n;
    cin >>n;
    int *p1,*p2,*p3;
    string *s;
    p1=new int[n];
    p2=new int[n];
    p3=new int[n];
    s=new string[n];
    input(n,p1,p2,p3,s);
    output(n,p1,p2,p3,s);
    delete []p1;
    delete []p2;
    delete []p3;
    delete []s;
    return 0;
}
程序还有一个函数没有编写,它出的错误是什么意思? error C2780: 'class std::basic_istream<_E,_Tr> &__cdecl std::getline(class std::basic_istream<_E,_Tr> &,class std::basic_string<_E,_Tr,_A> &,const _E)' : expects 3 arguments -               error C2780: 'class std::basic_istream<_E,_Tr> &__cdecl std::getline(class std::basic_istream<_E,_Tr> &,class std::basic_string<_E,_Tr,_A> &)' : expects 2 arguments - 1 provide
d
#4
fangdong652011-05-08 09:11
参数不对,可以用msdn查一下getline()方法就会发现参数有两个,将其改为getline(cin,s[i]);就行啦,具体的可以查一下getline()方法

#5
zknever2011-05-08 21:46
哈哈哈,谢啦,终于搞定啦!
1