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

C語言命令行參數處理:argc/argv 完整示例

     編輯:關於C語言

main 函數參數解析與命令行參數遍歷

標準 C 程序入口 int main(int argc, char *argv[]) 通過 argc(參數個數)和 argv(參數字符串數組)接收命令行輸入。

參數含義

  • argc:參數總數(含程序名),最小為 1
  • argv[0]:程序名稱/路徑
  • argv[1]...:用戶傳入的實際參數
  • argv[argc]:保證為 NULL

完整遍歷代碼

#include <stdio.h>  // 實際應包含 apue.h 或標準頭文件

int main(int argc, char *argv[]) {
    for (int i = 0; i < argc; i++) {
        printf("argv[%d]: %s\n", i, argv[i]);
    }
    return 0;
}

運行示例

$ ./demo arg1 arg2 "hello world"
argv[0]: ./demo
argv[1]: arg1
argv[2]: arg2
argv[3]: hello world

進階用法提示

  • 配合 getopt() 解析短選項(-a -b value)
  • 配合 getopt_long() 解析長選項(--help --version)
  • 參數包含空格時需用引號包裹
  • Windows 下 argv[0] 可能為完整路徑

內存佈局

argv (char **) → [ argv[0] → "program"
                   argv[1] → "arg1"
                   argv[2] → "arg2"
                   ...
                   argv[argc] → NULL ]
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved