[Powered by Google Translate] CHRIS GERBER:函數是一個系列內的步驟 更大的程序,通常被稱為 多次和從多個中的其他位置 該方案。 當創建一個C函數,其中一項規定是 指定一個返回值的類型。 最簡單的情況是一個的情況下,調用 代碼還沒有有關的函數的結果。 這可能的情況下,當我們打印數據 用戶的顯示,使用printf。 在這種情況下,我們可以聲明一個返回值 void類型。 使用void簡單地告訴編譯器,沒有 值將被退回。 讓我們來看看這是什麼看起來像。 讓我們說,我們有一個功能叫做say_hello 它有一個參數。 我們將通過一個人的名字,它會顯示一個問候 在屏幕上。 該名稱將char *類型。 我們將指定為參數。 我的應用程序並不需要知道什麼是印刷或者如果它 在打印。 因此,返回值類型為void。 此功能可以打印到屏幕上的命令是 printf(“請你好,%S \ n “,名稱); 問候語將被顯示和控制將被傳遞 備份到調用代碼。 有一點要注意的是,當返回值類型為void, 你不需要回報 表中的功能。 如果您選擇包括1,不包括返回值 作為一個參數。 在某些情況下,是有意義的返回一個 從一個函數值。 比方說,我們是寫一個函數調用add_floats。 我們將它傳遞兩個參數,花車, 被稱為第一和第二。 它會告訴我們這些彩車是什麼總和。 我們知道,如果我們添加了兩個漂浮起來,結果 將持股量。 鑑於此,我們選擇了一個返回類型為浮動。 此功能將執行計算並返回 在這樣的語句返回值 第一+第二;。 當控制傳遞回調用代碼, 得到的值是現在的代碼。 我們可以將這個值,如:float結果 add_floats(3.14,1.62 。); 現在,在這種情況下,結果將包含值4.76。 在此提醒您,浮點值是不精確的。 所以,如果這是一個財務計算,用美元和 美分,我們可能要考慮一個精確的數據類型,如 int和執行便士計算。 另一種情況下,我們將要返回一個值從 作用是當我們想知道,如果一個函數是 成功的。 如果沒有成功,我們可能還需要知道什麼類型的 發生錯誤。 比方說,我們正在試圖打開一個文件在磁盤上的數 中的字符數。 如果文件不能打開,我們希望能夠停止和 告訴用戶有關的問題。 我們會打電話給我們的的功能count_file_chars和會 需要一個參數。 我們將通過在使用的文件名 字符*文件名。 此功能可能是這個樣子。 在這個例子中,我們希望返回的數 為0,或更多。 這使得我們的負整數 使用為定點價值觀。 一個哨兵值僅僅是一個特殊值,它不 合法的數據,但傳達的信息。 在這裡,如果我返回-1調用代碼,我 實際發送的郵件出現了一個錯誤,而 試圖訪問該文件。 然後,我可以檢查返回值來確定,如果我 函數調用成功。 如果這個數字是0或更大的,我也知道 在該文件中的字符數。 然而,如果數字為小於0,我可以簡單地 打印出了問題發生。 一個權衡考慮的是,保留所有 負值為定點值,假設這是一個 32位的整數,我已經基本上帶走了周圍 2億可能的返回值。 返回值類型是最重要的元素之一 函數調用。 希望這簡短的概述,幫助你想想 三種主要類型:無效,結果值和定點值, 而當每個三個可能會對 適當的在你的代碼中。 感謝收看。