簡體   English   中英

C 使用 void 函數計算文件總和

[英]C using void function to compute sums of files

我有一個需要使用函數的作業
void stats(FILE *in, int *count, double *sum); ,它應該計算每個文件的總和、平均值和整數計數。 我們應該使用stats(in, &count, &sum)來調用該函數。 如果 stats 函數具有 void 返回類型,我對我應該如何將結果發送回 main 感到困惑。 任何幫助或解釋將不勝感激! 謝謝

您的函數簽名表明每個參數都是一個指針參數(它們以 * 開頭)。 在您的主函數中聲明(並可能初始化)這些變量,然后按照您被告知調用函數的方式傳遞這些變量的地址: stats(in, &count, &sum) 該函數將使用您傳遞給它的指針修改主作用域中的這些變量,而不返回任何值。 這是通過引用傳遞(或調用)的示例。

所以總的來說,您的主要功能將具有以下內容:

int main(void)
{
    /* some FILE opening here */
    int count = 0;
    double sum = 0;
    stats(in, &count, &sum);

    /* rest of your main function */
    return 0;
}

如果您想更多地了解 * 和 & 的含義,您應該了解指針在 C 中的工作原理——這里有一個非常基本的資源可以幫助您入門。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM