1. 程式人生 > 其它 >2021-01-06-main函式引數的祕密

2021-01-06-main函式引數的祕密

技術標籤:資料結構與演算法

main函式引數的祕密

大家應該都有一個模糊的記憶,C語言中main函式是程式的入口函式,所以程式執行時main函式呼叫別的函式,並且給別的函式傳入引數。但是沒人告訴我們是誰“呼叫”的main函式。其實我們可以理解為是作業系統呼叫的main函式,所以main函式的引數應該是作業系統給的,也就是說我們的在命令列介面執行程式是,需要給main函式引數.

1. argc / argv

argc是主程式引數的個數,也就是傳入引數的個數,這個值一開始不確定,是看自己輸入了多少引數而確定

argv 陣列存放的是傳入的引數,從0開始,第一個值存放的時可執行檔案的檔名,然後依次存放後面傳入的引數

#include<stdio.h>
int main(int argc,char* argv[])
{
    printf("argc is %d\n",argc);
    for(int i=0;i<argc;i++)
    {
        printf("args[%d]: %s\n",i,argv[i]);
    }
    return 0;
}

執行結果:
在這裡插入圖片描述

2. atoi()

atoi()代表的是ascii to integer,即“把字串轉換成有符號數字”