首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C 語言無參數函數的封裝與呼叫實作

     編輯:關於C語言

為什麼需要函數?

當某段獨立邏輯需重複使用多次時,將其抽取為函數可消除重複代碼、提高可維護性。以列印星號圖形為例:

*
**
***
****
*
**
***
****

上半部與下半部完全相同,若直接寫兩遍迴圈,不僅冗長,修改時也需改兩處。

原始碼示範

#include <stdio.h>

void star()  // 函數宣告與定義,無參數、無傳回值
{
    int i, j;
    for (i = 1; i <= 4; i++)
    {
        for (j = 1; j <= i; j++)
            printf("*");
        puts("");  // 換行
    }
    return;  // 可省略,void 函數結束自動返回
}

int main()
{
    puts("The first one:");
    star();  // 第一次呼叫
    puts("The second one:");
    star();  // 第二次呼叫
    return 0;
}

執行流程解析

  1. 程式從 main 開始執行
  2. 遇到 star() 呼叫,控制權轉移至 star 函數體
  3. 執行完 star 內的迴圈列印
  4. 遇到 return(或函數結尾),控制權返回 main 緊接著的下一行
  5. 再次呼叫 star(),重複上述過程

關鍵點總結

  • 函數原型:建議在檔案頂部或標頭檔宣告 void star(void);,明確表示不接受參數
  • 無參數 ≠ 空參數列表:C 語言中 star() 代表「參數未指定」,star(void) 才是「嚴格無參數」
  • 模組化優勢:邏輯集中維護,若要改成列印 5 行,只需修改 star 內的 i <= 5
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved