如何使用C将整数相加的结果写入csv文件?

如何使用C将整数相加的结果写入csv文件?,c,variables,csv,printf,C,Variables,Csv,Printf,我的C代码打开一个包含5个数字(1,2,3,4,5)的csv文件,将它们相加,然后将结果返回给Python。我已经理解了如何做到这一点,但现在我还试图让C将结果写入csv文件 我知道我必须将f=fopen与“w”一起使用,而不是“r”,然后使用fprintf 我肯定对C代码的这一部分有问题,因为当我这样做时: gcc file.c 在linux命令行中,它失败了 问题中的C代码部分如下所示: #include <stdio.h> main() { printf("hel

我的C代码打开一个包含5个数字(1,2,3,4,5)的csv文件,将它们相加,然后将结果返回给Python。我已经理解了如何做到这一点,但现在我还试图让C将结果写入csv文件

我知道我必须将
f=fopen
“w”
一起使用,而不是
“r”
,然后使用
fprintf

我肯定对C代码的这一部分有问题,因为当我这样做时:

gcc file.c
在linux命令行中,它失败了

问题中的C代码部分如下所示:

#include <stdio.h>

main() 
{
    printf("hello world\n");

    FILE *f;
    int a,b,c,d,e;

    f = fopen("goo.csv", "r");
    fscanf( f, "%d,%d,%d,%d,%d", &a,&b,&c,&d,&e);

    f = fopen("goo.csv", "w");
    fprintf(f, "%d+%d+%d+%d+%d", &a+&b+&c+&d+&e);

    return a+b+c+d+e;
}

我做错了什么?我如何修复它?谢谢。

返回a+b+c+d+e后的代码将不会执行


如果您真的想将结果写入同一个文件,您应该在(重新)写入之前将其关闭。

刚刚注意到,谢谢。。。然而,似乎仍然有一个问题是我造成的。你的答案的第一部分现在是无关的…因为OP编辑了他的代码@Coolgay-Tx.我有责任跟进并给出答案吗。我不熟悉堆栈溢出?Jakub,你不必这么做-跟进或更改答案,甚至删除它。如果OP改变了问题,你不可能以任何可能的方式跟上进度。事实上,如果OP做得太自由,他很可能会引起一个如此的主持人的注意。@technosaurus-当然。不过Alex最好还是关闭文件。我猜现在不是教他如何缩短一个r-w文件的时候……你还有其他问题,除了它不是写的。因为当你解决这个问题时,你有一个更严重的问题,那就是你的电话全错了。首先添加变量的地址,然后调用需要5个整数,但只提供一个。
fprintf
行中的所有内容都将被添加到一起,从而形成一个值。打开一个以前没有关闭的文件是个坏主意。是的,我注意到我犯了这些愚蠢的错误。这不是我在作恶,我只是刚刚开始编程。一旦你解决了错误,所有的错误都是愚蠢的:)。
f = fopen("goo.csv", "w");
fprintf(f, "%d+%d+%d+%d+%d", &a+&b+&c+&d+&e);