深入Main函数中的参数argc,argv的使用详解

 更新时间:2013年05月24日 11:12:18   作者:  
本篇文章是对Main函数中的参数argc,argv的使用进行了详细的分析介绍,需要的朋友参考下
C/C++语言中的main函数,经常带有参数argc,argv,如下:
复制代码 代码如下:

int main(int argc, char** argv)

这两个参数的作用是什么呢?argc 是指命令行输入参数的个数,argv存储了所有的命令行参数。假如你的程序是hello.exe,如果在命令行运行该程序,(首先应该在命令行下用 cd 命令进入到 hello.exe 文件所在目录) 运行命令为:
复制代码 代码如下:

hello.exe Shiqi Yu 



下面的程序演示argc和argv的使用:
复制代码 代码如下:

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

假如上述代码编译为hello.exe,那么运行:
复制代码 代码如下:

hello.exe a b c d e

将得到
复制代码 代码如下:

Argument 0 is hello.exe.
Argument 1 is a.
Argument 2 is b.
Argument 3 is c.
Argument 4 is d.
Argument 5 is e.

运行:
复制代码 代码如下:

hello.exe lena.jpg

将得到
复制代码 代码如下:

Argument 0 is hello.exe.
Argument 1 is lena.jpg.

相关文章

  • C语言实现按行读写文件

    C语言实现按行读写文件

    这篇文章主要为大家详细介绍了C语言实现按行读写文件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • C语言中函数返回值不一致问题

    C语言中函数返回值不一致问题

    这篇文章主要介绍了C语言中函数返回值不一致问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • C语言关于include顺序不同导致编译结果不同的问题

    C语言关于include顺序不同导致编译结果不同的问题

    这篇文章主要介绍了在日常调试C语言中include的顺序不同从而影响最后编译结果不同的问题,究其原因是写代码的习惯所导致,下面跟小编一起来看看吧
    2022-04-04
  • C++实现MyString的示例代码

    C++实现MyString的示例代码

    本文主要介绍了C++实现MyString的示例代码,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • C++泛型编程函(数模板+类模板)

    C++泛型编程函(数模板+类模板)

    这篇文章主要介绍了C++泛型编程函(数模板+类模板),类模板与函数模板一样也会经过两次编译,在此文中重点区分一下类模板与模板类,函数模板与模板函数的概念,泛型编程是C++开发的一大精髓,灵活地运用泛型编程,需要的朋友可以参考一下
    2022-02-02
  • C++中关于this指针的入门介绍

    C++中关于this指针的入门介绍

    this 指针在C++类和对象中是个很方便实用的关键字,可以简化对象成员属性的调用,使代码表达的含义更加准确;在之前的学习中我们都可以判断变量所占内存空间大小,那么我们创建的类对象所占的内存空间怎么计算呢?想知道this的妙用和类对象占用的内存空间就来跟我学习吧
    2022-07-07
  • C++11右值引用和移动语义的实例解析

    C++11右值引用和移动语义的实例解析

    左值和右值都是针对表达式,左值是指表达式结束后依然存在的持久对象,右值是指表达式结束时就不再存在的临时对象,下面这篇文章主要给大家介绍了关于C++11右值引用和移动语义的相关资料,需要的朋友可以参考下
    2022-09-09
  • QT使用Http协议通信的实现示例

    QT使用Http协议通信的实现示例

    使用QT进行应用开发时,有时候需要进行客户端和服务端的网络通信,本文主要介绍了QT使用Http协议通信的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • 在C/C++与Python之间实现通信的常见方法

    在C/C++与Python之间实现通信的常见方法

    在C/C++与Python之间实现通信的方式有很多,本文给大家介绍了一些常见的方法,文中通过代码示例介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-12-12
  • c++基础算法动态DP解决CoinChange问题

    c++基础算法动态DP解决CoinChange问题

    这篇文章主要为大家介绍了c++基础算法如何利用动态DP来解决Coin Change的问题示例过程,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-10-10

最新评论