每个C语言程序都必须有一个称为main()的函数,作为程序启动的起点。当执行程序时,命令行参数(command-line argument)(由shell逐一解析)通过两个入参提供给main()函数。第一个参数int argc,表示命令行参数的个数。第二个参数char *argv[],是一个指向命令行参数的指针数组,每一参数又都是以空字符(null) 结尾的字符串。第一个字符串,亦即argv[0]指向的,(通常)是该程序的名称。argv中的指针列表以NULL指针结尾(即argv[argc]为NULL)。

argv[0]包含了调用程序的名称,

使用main(int argc,char *argv[]) == main(int argc,char **argv)的基本操作是linux编程的最基本的一步,在windows下也是exe脱离IDE运行的必学技能,程序编译成功之后,在cmd下,使用参数输入来运行程序,自己控制程序参数的输入来测试和运行程序。

int argc代表输入参数的个数,英文全名arguments count,以空格来计数,程序名(*.exe)是为第一个参数。

char *argv[]以字符数组的方式储存参数内容,英文全名arguments vector,argv[1]代表程序名。

下面的程序演示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.
方法2. 项目——属性——配置属性——调试——命令参数,设置命令参数就可以传入 http://www.cnblogs.com/rainbow70626/p/5595454.html

最新文章

  1. 实现Launcher默认壁纸、选择壁纸定制化功能
  2. asp.net fileupload上传大文件时提示404.13错误
  3. April Fools Day Contest 2014
  4. tp框架实现防止非法登录
  5. 应用程序缓存--manifest
  6. Markdown learning
  7. 查看SQL Server日志 Part 1
  8. Linux内核分析--操作系统是如何工作的
  9. CodeForce 339:A+B+C
  10. Django之牛刀初试
  11. 从sockaddr中取得Ip地址和端口号
  12. tomcat------https单向认证和双向认证
  13. linux下 文件IO 相关
  14. sersync 实时同步文件
  15. Thinkphp代码生成工具 ThinkphpHelper
  16. mysql mariadb的VC客户端遇到的问题
  17. RouteOS 频繁自启
  18. sqlserver 临时表、表变量、CTE的比较
  19. 帮助大家理解java中的随机和继承,动态绑定.
  20. 关于找不到stdafx.h头文件问题(pass)

热门文章

  1. zookeeper3.4.5集群安装
  2. python并发编程之IO模型(Day38)
  3. C#:DateTime格式增减时间
  4. PAT 天梯赛 L1-008. 求整数段和 【水】
  5. 体系编程、SOC编程那些事儿
  6. Django---自定义admin组件思维导图
  7. 20145201 《Java程序设计》第一周学习总结
  8. java.lang.ClassNotFoundException: org.apache.commons.discovery.tools.DiscoverSingleton
  9. CODE FESTIVAL 2015 決勝(部分)
  10. KMP(转自matrix67)