main函數默認參數argc和argv的詳解


    int main(int argc, char** argv)   
    {  
        int n = 0 , i;  
        for(i = 1 ; i < argc ; i++)  
            n = n * 10 + *argv[i]-'0';  
        printf("%d\n",n);  
        return 0;  
    }  

若運行時輸入以下命令行   tt   12   345   678,則程序運行的輸出結果是 :136

主函數的第一個參數argc為整型參數,記下從命令行輸入參數的個數;

第二個參數argv是一個字符型的指針數組,它的每一個元素分別指向命令行輸入的各字 符串。

在本例中argc的值為4,argv[0]指向字符串“tt”,argv[1]指向字符串“12”,argv[2]指向字符串“345”, argv[3]指向字符串“678”。

程序中,通過一個for循環,遍歷了后面的三個參數字符串,每次將n自乘10,然后累加argv[i]-‘0’,即 第i個參數字符串的首字符減去‘0’。  一個數字字符減去‘0’字符,即可得到這個數字字符的實際數值,因此三次循環的結果是讓n的為136。


免責聲明!

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



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