943566987 发表于 2016-10-8 21:03:22

函数传递编译的时的错误 求大神指教

本帖最后由 943566987 于 2016-11-23 23:26 编辑

#include <stdio.h>
#define FUNDLEN50
struct funds{
        char bank{ FUNDLEN };
        double bankfund;
        char save{ FUNDLEN };
        double savefund;
};
double sum(double, double);
int main(void)
{
        struct funds stan ={
                "Garlic-Melon bank",
                3024.72,
                "Lucky s Savings and Loan"
                ,9327.11
        };
        printf("Stan has atotal of %.2f.\n", sum(stan.bankfund, stan.savefund));
        return 0;
}
double sum(double x, double y)
{
        return (x + y);
}


为什么会出现这样的情况 我看了好多次代码都没发现那里写错 求大神们指教

musilintan 发表于 2016-10-9 13:25:44

本帖最后由 musilintan 于 2016-10-9 13:30 编辑

你的语法有毒。。。
#include <stdio.h>

#define FUNDLEN 50

struct funds
{
    char bank;    //字符串数组要[]号
    double bankfund;
    char save;
    double savefund;
}

double sum(double, double);

int main(void)
{
    struct funds stan;    //你那样赋值的方法是数组才会那样初始化的。int a = {0, 1, 2};
    strcpy(stan.bankfund, "Garlic-Melon bank");
    stan.bankfund = 3024.72;
    strcpy(stan.savefund, "Lucky s Savings and Loan");
    stan.savefund = 9327.11;

    printf("Stan has atotal of %.2f.\n", sum(stan.bankfund, stan.savefund));

    return 0;
}

double sum(double x, double y)
{
    return (x + y);
}

徐皖辉 发表于 2016-10-11 00:02:54

musilintan 发表于 2016-10-9 13:25
你的语法有毒。。。

能把[ ]写成{ }也是强啊。。。。

943566987 发表于 2016-10-13 22:04:37

musilintan 发表于 2016-10-9 13:25
你的语法有毒。。。

多谢指教 我太粗心了。。。 才犯这么低级错误{:10_266:}
页: [1]
查看完整版本: 函数传递编译的时的错误 求大神指教