C基礎知識(14):命令行參數


命令行參數是使用main()函數參數來處理的,其中,argc是指傳入參數的個數,argv[]是一個指針數組,指向傳遞給程序的每個參數。

應當指出的是,argv[0]存儲程序的名稱,argv[1]是一個指向第一個命令行參數的指針,*argv[n]是最后一個參數。如果沒有提供任何參數,argc 將為1,否則,如果傳遞了一個參數,argc將被設置為2。

多個命令行參數之間用空格分隔,但是如果參數本身帶有空格,那么傳遞參數的時候應把參數放置在雙引號或單引號內部

 1 #include <stdio.h>
 2 
 3 int main(int argc, char *argv[]) {
 4     if (argc == 2) {
 5         printf("The argument supplied is %s\n", argv[1]);
 6     } else if (argc > 2) {
 7         printf("Too many arguments supplied.\n");
 8     } else {
 9         printf("One argument expected.\n");
10     }
11 }

Result

[xxxxx]$ ./Test.o 
One argument expected.
[xxxxx]$ ./Test.o a
The argument supplied is a
[xxxxx]$ ./Test.o a b
Too many arguments supplied.
[xxxxx]$ ./Test.o "a b"
The argument supplied is a b

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM