首页 > 解决方案 > 包含字符串和浮点数的函数,我从 main 调用它。但是错误

问题描述

我是一个新手,我只是编写一个函数并从 main 调用它。但是错误返回。

我已经尝试编译它但是错误

#include <stdio.h>

void data(char name, char address,float

     salary);

    int main()
    {
        char name[] = "john";
        char address[] = "london";
        float salary=10000000;

        data(name,address,salary);

        return 0;
    }

    void data(char name,char address,float salary)
    {
        printf("Name : %s\n",name);
        printf("Address : %s\n",address);
        printf("Salary : %lf\n",salary);
    }

一些我不明白的警告信息。我认为它应该工作。这是怎么回事?

标签: c

解决方案


您将一个字符(字符串)数组传递给数据函数,但在函数声明中您将它们初始化为接收一个 char 变量。

您应该将声明更改为:

void data (char name[], char address[], float salary)

或者:

void data (char *name, char *address, float salary)

推荐阅读