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。

来自https://www.cnblogs.com/quan1/p/6698107.html

猜你喜欢

转载自blog.csdn.net/Power_wy/article/details/89264433