如何将字符串值添加到结构?

时间:2019-04-04 17:28:36

标签: c string struct

我正在编写有关卡的程序,但是无法在结构中添加字符串。这是我的代码:

@EnableGemfireRepositories

所以,请帮助我,我进行了很多搜索,但没有得到任何有用的答案。

2 个答案:

答案 0 :(得分:2)

我认为编译器已经警告过您

        Adat d={szinek[b],szimb[c]};

因为编译器将尝试做

d.szin=szinek[b];

并且您不能直接执行array2 = array1,因为在这种情况下,您将操作数组的地址(char *)而不是它们的值。

这是初始化char []和结构的正确方法

for(int c=0; c<13; c++)
{
    Adat d;
    strcpy(d.szin,szinek[b]);
    d.ertek=szimb[c];
    pakli[a]=d;
    a++;
}

或以更好的方式

for(int c=0; c<13; c++)
    {
        strcpy(pakli[a].szin,szinek[b]);
        pakli[a].ertek=szimb[c];
        a++;
    }

答案 1 :(得分:1)

for(int c=0; c<13; c++)
{
        Adat d={.ertek=szimb[c],};
        strcpy(d.szin,szinek[b]);
        pakli[a]=d;
        a++;
}

for(int c=0; c<13; c++)
{
        pakli[a].ertek=szimb[c];
        strcpy(pakli[a].szin,szinek[b]);
        a++;
}