剛開始學寫C++程式時,一直有個疑問,就是int main(int argc, char* argv[])中的兩個參數到底做什麼用?程式寫多了,逐漸忽略這兩個參數,然而在使用前人所撰寫的程式中,才發現它們是為了DOS系統所設立。
說說int main(int argc, char* argv[])兩個參數的作用是什麼呢?argc是指命令行輸入參數的個數,argv存儲了所有的命令行參數。假如我的程式是happyman.exe,如果在命令提示字元視窗運行該程式,(首先應該在命令行下用 cd 命令進入到 happyman.exe 文件所在目錄) 運行命令為:
happyman.exe Happy Man
那麼,argc的值是3,argv[0]是"happyman.exe",argv[1]是"Happy",argv[2]是"Man"。當然,參數個數可以很多。
Comments on: "[C++] 主程式函式的兩個參數argc和argv(Main Function Parameter)" (2)
Now, the C standard allows you to write any “compatible" prototype for main. For instance, you can write any of these…
int main(int argc, const char *const argv[]);
int main(int argc, const char *argv[])
int main(int argc, const char **argv);
int main(int argc, const char *const *const argv);
https://stackoverflow.com/questions/35860794/how-to-print-argv-arguments-from-main-function-in-c
讚讚
現在要用 Flutter 來呼叫 C/C++,要研究如何轉換參數 int argc, char* argv[]
真的是十年前的功夫,全都忘光了~😝
讚讚