错误:无效值未被忽略,因为它应该在C程序中

错误:无效值未被忽略,因为它应该在C程序中,c,C,当我试图编译有两个函数的程序时,我总是遇到以下错误: exer1.c: In function ‘main’: exer1.c:15:14: error: void value not ignored as it ought to be 代码如下: #include <stdio.h> void addition_1(int *num1, int *num2); int main(void) { int num1; int num2

当我试图编译有两个函数的程序时,我总是遇到以下错误:

    exer1.c: In function ‘main’:
    exer1.c:15:14: error: void value not ignored as it ought to be
代码如下:

#include <stdio.h>
void addition_1(int *num1, int *num2);
int main(void) {

        int num1;
        int num2;
        int finalAnswer;

        printf("number one: ");
        scanf("%d", &num1);

        printf("number two: ");
        scanf("%d", &num2);

        finalAnswer = addition_1(&num1, &num2);

        return 0;

}

void addition_1(int *num1, int *num2) {

        int total;

        total = *num1 + *num2;
        print("%d + %d = %d", *num1, *num2,total);
}
#包括
无效加法_1(int*num1,int*num2);
内部主(空){
int num1;
int num2;
国际金融报;
printf(“第一名:”);
scanf(“%d”&num1);
printf(“第二号:”);
scanf(“%d”&num2);
finalAnswer=加法1(&num1,&num2);
返回0;
}
无效加法_1(int*num1,int*num2){
整数合计;
总计=*num1+*num2;
打印(“%d+%d=%d”,*num1,*num2,总计);
}

我知道我不需要使用指针,但我想使用指针来进行学习体验和理解。当我编译程序时,有没有办法跳过结果?

它说明了一切<代码>添加\u 1正在返回
void
(即不返回任何内容)。但这句话:

finalAnswer = addition_1(&num1, &num2);

正在将(非)返回值赋给变量。

您尝试将函数的返回值
addition\u 1
赋给
finalAnswer
,即使函数根本不返回任何内容。您可以通过两种方式消除此错误:

  • 删除对
    finalAnswer
    (及其定义)的赋值。你根本不用这个变量
  • 将函数的声明/定义更改为

    int addition_1(int *num1, int *num2)
    
    如果以后要计算总和,请返回
    total


  • 这个垃圾昨天才被问到!!这几乎是相同的代码。作业,还是什么?你和乔·伍兹在同一个a班?