C\C++ 命令行參數argc argv + 命令行運行程序

當我們需要用命令行來運行程序的時候,我們需要用到主函數的參數(argc 和 argv)

含義

argc: 整數,用來統計你運行程序時送給main函數的命令行參數的個數

argv[0] 指向程序運行的全路徑名
argv[1] 指向在DOS命令行中執行程序名後的第一個字符串
argv[2] 指向執行程序名後的第二個字符串

操作

打開命令行
win+R
輸入cmd回車
在這裏插入圖片描述
切換路徑
用cd命令(即ChangeDirectory),我們切換路徑到我們要運行的文件的目錄下。
在這裏插入圖片描述
例如這樣,我切換到了CodeBlocks的源文件文件夾所在的目錄裏,這個文件夾裏有源代碼和可執行的.exe文件。
在這裏插入圖片描述
這時候我想要運行code2.exe文件,我輸入要運行的文件名code2.exe ,然後後面的可以輸入多個空格隔開的字符串,它們會作爲main()函數的參數。
在這裏插入圖片描述
我們用代碼輸出一下

#include <cstdio>
#include <cmath>
#include <algorithm>

int main(int argc, char **argv)
{
    printf("%d\n", argc);
    while(argc){
        printf("%s\n", argv[--argc]);
    }
    return 0;
}

在這裏插入圖片描述
argc爲參數個數,3個明顯正確

agrv[0]是地址,在IDE運行如下
在這裏插入圖片描述
在這裏插入圖片描述

作用

主要在於地址後面的字符串,比如說你要調用code2.exe裏面的某個功能模塊,你可以輸入code2.exe function1 或者 code2.exe -w 之類的

源代碼中檢測argv[1]的內容,根據argv[1]的內容來運行相對應的模塊。

參考來源

向南的博客 https://www.cnblogs.com/zhangxianhai/p/3587348.html
百度百科 https://baike.baidu.com/item/argc%20argv/10826112?fr=aladdin
yukiooy的博客 https://blog.csdn.net/yukiooy/article/details/4682989

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章