御笔剑客 发表于 2017-12-18 13:24:10

结构数组应该怎么赋值呢?

#include<iostream>
#include<string>
using namespace std;

struct inflatable
{
    char name;
    float volume;
    double price;
};

int main()
{
    inflatable guest=
    {
      {"Bambi",0.5,21.99},
      {"Godzilla",2000,565.99}
    };

    guest={"Car",1000,100000};
    cout<<"The guest "<<guest.name<<" and "<<guest.name
    <<"\nhave a combined volume of"
    <<guest.volume+guest.volume<<" cubic feet.\n";

    return 0;

}

我给guest赋值后就报错了error: no match for 'operator=' (operand types are 'inflatable' and '<brace-enclosed initializer list>')|

BngThea 发表于 2017-12-18 13:48:04

char字符串不能直接用 = 号来赋值,c++还是用string吧

御笔剑客 发表于 2017-12-18 13:52:55

BngThea 发表于 2017-12-18 13:48
char字符串不能直接用 = 号来赋值,c++还是用string吧

那么如果是c语言的话是不是没办法赋值了呢?{:10_266:}

御笔剑客 发表于 2017-12-18 13:53:19

BngThea 发表于 2017-12-18 13:48
char字符串不能直接用 = 号来赋值,c++还是用string吧

那么如果是c语言的话是不是没办法赋值了呢?{:10_266:}

BngThea 发表于 2017-12-18 13:54:37

御笔剑客 发表于 2017-12-18 13:52
那么如果是c语言的话是不是没办法赋值了呢?

有啊,用strcpy函数

御笔剑客 发表于 2017-12-18 14:54:34

BngThea 发表于 2017-12-18 13:54
有啊,用strcpy函数

我明白了,谢谢了
页: [1]
查看完整版本: 结构数组应该怎么赋值呢?