C程序最大的特点就是所有的程序都是用函数来装配的。main()称之为主函数,是所有程 序运行的入口。其余函数分为有参或无参两种,均由main()函数或其它一般函数调用,若调用的是有参函数,则参数在调用时传递。

  C/C++语言中的main函数,经常带有参数argc,argv,如下:

  int main(int argc, char** argv)int main(int argc, char* argv[])从函数参数的形式上看,包含一个整型和一个指针数组。当一个C/C++的源程序经过编译、链接后,会生成扩展名为。EXE的可执行文件,这是可以在操作系统下直接运行的文件,换句话说,就是由系统来启动运行的。对main()函数既然不能由其它函数调用和传递参数,就只能由

  系统在启动运行时传递参数了。

  在操作系统环境下,一条完整的运行命令应包括两部分:命令与相应的参数。其格式为:

  命令 参数1 参数2 … 参数n?

  此格式也称为命令行。命令行中的命令就是可执行文件的文件名,其后所跟参数需用空格分隔,并为对命令的进一步补充,也即是传递给main()函数参数

  命令行与main()函数参数存在如下的关系:

  设命令行为:program str1 str2 str3 str4 str5

  其中program为文件名,也就是一个由program.c经编译、链接后生成的可执行文件program.exe,其后各跟5个参数。对main()函数来说,它的参数argc记录了命令行中命令参数的个数,共6个,指针数组的大小由参数argc的值决定,即为char*argv[6],指针数组的取值情况如图6-15所示。

 
 
 
 
  数组的各指针分别指向一个字符串。应当引起注意的是接收到的指针数组的各指针是从命令行的开始接收的,首先接收到的是命令,其后才是参数

【转载】http://verydemo.com/demo_c92_i110439.html

最新文章

  1. Struct2 csv文件上传读取中文内容乱码
  2. 【XLL 框架库函数】 TempMissing/TempMissing12
  3. 使用.net Reflector手动修改单个dll文件
  4. .Net语言 APP开发平台——Smobiler学习日志:如何仿微信朋友圈的消息样式?
  5. WebForm中搭配母版页和用户控件页时候的事件加载顺序
  6. 【226】C# 相关功能实现代码
  7. Hadoop之伪分布环境搭建
  8. 安装 slowhttptest ddos攻击软件
  9. java 面向对象编程--第十四章 多线程编程
  10. Linux 上使用 Gmail SMTP 服务器发送邮件通知
  11. C语言结构体(struct)常见使用方法
  12. 深入理解 while(cin >> x >> y)
  13. UNIX域协议(命名套接字)
  14. C语言——第七周作业
  15. robotframework接口之上传图片
  16. 20175307《Java程序设计》第8周学习总结
  17. vue 环境的搭建及初始化项目
  18. Objective-C @executable_path、@loader_path和@rpath
  19. php实现队列
  20. "==" equals和hashCode的联系和区别

热门文章

  1. 201409-2 画图 Java
  2. 吴裕雄--天生自然 PYTHON3开发学习:字符串
  3. PAT Basic 完美数列(25) [two pointers]
  4. 第二季 第十一天 part2
  5. iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  6. screen模式下鼠标无法滚动【问题】
  7. adaptation|domestication|genome evolution|convergent evolution|whole-genome shotgun sequencing|IHGSC
  8. MFC的cstring判断是否存在中文字符
  9. linux操作提示:“Can't open file for writing”或“operation not permitted”的解决办法
  10. 【网络流+贪心】Homework