C语言-main方法的两个参数是干什么的?

你们都知道C语言的main方法怎么写的吧!但大家知道mian方法里的参数的含义吗?

代码以下:

int main(int argc,char *argv[]){
    //argc是传进的参数个数
    //argv是传进的参数

    
    for (int i = 0; i < argc; i++) printf("%s\t",argv[i]);
    
    //argv 是个随机数字

    return 0;
}

 

  • int argc,char *argv[]这是什么意思呢?

 

  其实这个就是咱们运行时给的参数;好比argc他表明咱们给的参数的个数,而 *argv[]是咱们传进参数的内容

 

  • 咱们怎么获取这些东西呢?

    1.获取传参个数:数组

      获取方法很简单,若是咱们想获取参数的个数,argc就是了,直接打印argcspa

     2.获取传递的参数code

      *argv他是一个数组,因此按照正常的方法获取数组就ok啦!blog

  好比咱们如下面为例子(遍历参数)io

     

#include <stdio.h>

int main(int argc,char *argv[]){
    //argc是传进的参数个数
    //argv是传进的参数

    
    for (int i = 0; i < argc; i++) printf("%s\t",argv[i]);
    
    //argv 是个随机数字

    return 0;
}

 

输入 run.exe aa bbfor循环

输出:run.exe aa      bbclass


 

咱们能够发现,他把run.exe也当成了参数,这不是我想要的结果,因此咱们改变下for循环规则!

 

#include <stdio.h>

int main(int argc,char *argv[]){
    //argc是传进的参数个数
    //argv是传进的参数

    
    for (int i = 0; i < argc-1; i++) printf("参数为:%s\t",argv[i+1]);
    
    //argv 是个随机数字

    return 0;
}

 

 

 

这样就OK了!随机数

相关文章
相关标签/搜索