課程
/后端開發
/C++
/趣味 C++ 入門
(int argc,char **argv)是什么意思
2021-12-27
源自:趣味 C++ 入門 2-2
正在回答
(int argc, char **argv)?是C和C++中?main?函數的參數列表。這些參數用于接收命令行參數。
(int argc, char **argv)
main
argc?(argument count) 是一個整數,表示命令行參數的數量,包括程序名稱本身。它的值至少為1,即只有程序名本身,沒有其他參數。argv?(argument vector) 是一個指向字符指針的指針,用于存儲命令行參數的字符串。它的每一個字符串都是一個命令行參數。第一個參數 argv[0] 存儲的是程序的名稱,后續的參數依次存儲在 argv[1]、argv[2]、...、argv[argc - 1] 中。
argc?(argument count) 是一個整數,表示命令行參數的數量,包括程序名稱本身。它的值至少為1,即只有程序名本身,沒有其他參數。
argc
argv?(argument vector) 是一個指向字符指針的指針,用于存儲命令行參數的字符串。它的每一個字符串都是一個命令行參數。第一個參數 argv[0] 存儲的是程序的名稱,后續的參數依次存儲在 argv[1]、argv[2]、...、argv[argc - 1] 中。
argv
舉個例子:
我現在編寫了一個名稱為 myprogram.cpp 的 C++ 程序,程序的代碼如下:
#include?<iostream> int?main(int?argc,?char?**argv)? { ????std::cout?<<?"Argument?count:?"?<<?argc?<<?std::endl;???? ???? ????for?(int?i?=?0;?i?<?argc;?i++)? ????{ ????????std::cout?<<?"Argument?"?<<?i?<<?":?"?<<?argv[i]?<<?std::endl; ????}???? ????return?0; }
在上面的示例中,程序使用了?argc?和?argv?參數。它打印出命令行參數的數量,并逐個打印出每個參數的值。
接下來我對這個?myprogram.cpp 程序進行了編譯(編譯之后才能運行),會生成一個叫做 myprogram 的可執行文件。
假如我現在要在命令行中運行?./myprogram arg1 arg2 arg3,則輸出將是:
./myprogram arg1 arg2 arg3
Argument?count:?4 Argument?0:?./myprogram Argument?1:?arg1 Argument?2:?arg2 Argument?3:?arg3
注意 Argument 0 這里沒有寫錯,程序運行的結果就是如下:
Argument?0:?./myprogram
#include<stdio.h>
int main(int argc,char **argv)
{
? ? printf("?main (int argc, char *argv [ ], char **env)是UNIX和Linux中的標準寫法。 argc:?整數,用來統計你運行程序時送給main函數的命令行參數的個數\n");
? ? return 0;
}
舉報
C++ 入門,開啟趣味學習之旅,揭開 C++ 的神秘面紗,讓你不再望而生畏。
2 回答int argc,char **argv什么意思
1 回答int main(int argc,char **argv)
1 回答int argc,char **argv這個有什么意義嗎
3 回答第一個參數argc表示參數個數,第二個參數argv是參數組,這個作用是什么
1 回答stu是什么意思
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2024-01-07
(int argc, char **argv)
?是C和C++中?main
?函數的參數列表。這些參數用于接收命令行參數。舉個例子:
我現在編寫了一個名稱為 myprogram.cpp 的 C++ 程序,程序的代碼如下:
接下來我對這個?myprogram.cpp 程序進行了編譯(編譯之后才能運行),會生成一個叫做 myprogram 的可執行文件。
假如我現在要在命令行中運行?
./myprogram arg1 arg2 arg3
,則輸出將是:注意 Argument 0 這里沒有寫錯,程序運行的結果就是如下:
2022-01-01
#include<stdio.h>
int main(int argc,char **argv)
{
? ? printf("?main (int argc, char *argv [ ], char **env)是UNIX和Linux中的標準寫法。 argc:?整數,用來統計你運行程序時送給main函數的命令行參數的個數\n");
? ? return 0;
}