`
superwulei
  • 浏览: 106298 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

main函数中的参数argv和argc变量的含义

阅读更多

这是C语言中的命令行参数,所谓命令行参数,就是在DOS下执行命令所需要的参数,我们学习C语言的时候,一般都是编一些小程序,输出一些数据了等等,但是如果我们编制这样一个程序,比如编制一个程序能把一个文件的内容追加到另外一个文件中,这样我们编的程序就需要你提供命令的后面两个文件名(和命令一起称做命令行参数) 如这个程序叫做append使用时候(在dos下敲入如下命令)如下使用 append file1.c file2.c 就可以完成file1.c的,内容追加到file2.c中 那么几个字符串:append、file1.c和file2.c三个实参传给谁呢,这就需要在main()函数定义一些形式参数用来接收这些实参在命令行中输入的字符串的个数就存储在argc当中,三个字符串的内容存储char *argv[]当中这样在定义的时候主函数就定义为: main(int argc,char *argv[]) 比如有以下一个程序:假如文件名称叫做test.c main(int argc, char *argv[]) { int i; printf("the command prameter number is %d",argc); for(i=0;i<argc;i++) printf("%s ",argv[i]) printf(" \n "); } 程序在编译运行以后,在提示符下输入: test aaaaaa bbbbbb 然后回车,则输出结果为: the command prameter number is 3 test aaaaaa bbbbbb 注意:argc中统计了参数的个数,本例参数个数为3个;其中,argv[0]中存储的是:test,argv[1]中存储的是aaaaaa,argv[2]中存储的是bbbbbb。 因此,如果我们要编写一些要执行命令的程序的话,必须就要用到命令行参数,比如dos下的copy、rename等命令,等需要有有多个参数。

分享到:
评论

相关推荐

    XXXX.rar_argc argv_c语言 命令 参数 argc_argv_www.xxxx_xxxxerr_yes

    在Turbo C2.0启动过程中, 传递main()函数三个参数: argc, argv和env。 * argc: 整数, 为传给main()的命令行参数个数。 * argv: 字符串数组。 在DOS 3.X 版本中, argv[0] 为程序运行的全路径名 对DOS 3.0 以下的...

    getopt多参数解析函数具体分析命令行参数解析

    参数argc和argv是由main()传递的参数个数和内容。参数optstring 则代表欲处理的选项字符串。此函数会返回在argv 中下一个的选项字母,此字母会对应参数optstring 中的字母。如果选项字符串里的字母后接着冒号“:”,...

    C语言中getopt()函数和select()函数的使用方法

    1、参数argc 和argv 是由main()传递的参数个数和内容。 2、参数optstring 则代表欲处理的选项字符串。 此函数会返回在argv 中下一个的选项字母,此字母会对应参数optstring 中的字母。 如果选项字符串里的字母后接着...

    程序员面试宝典题目总结

    int main(int argc, char* argv[]) { int b=3; int arr[] = {6, 7, 8, 9, 10}; int *ptr = arr; *(ptr++) += 123; printf("%d, %d\n", *ptr, *(++ptr)); return 0; } 2. 下面程序的结果是多少? #include int...

    Linux-Socket-服务器编程实例.pptx

    Linux Socket服务器端编程实例 main函数中的参数 在Linux C语言中,main函数通常写作以下形式: int main(int argc,char *argv[]) 其中的两个参数argc和*argv[]是什么含义呢? 8 Linux-Socket-服务器编程实例全文...

    C语言UDP传输系统源码

    2. `GetArgments(int argc, char **argv)`函数用于解析命令行参数,指定程序是执行广播还是多播,以及设置相关参数。 3. `userHelpAll()`, `userHelpBro()`, `userHelpMul()`函数用于打印用户帮助信息。 4. `...

    -C++参考大全(第四版) (2010 年度畅销榜

    6.4 传给main()的变元argc和argv 6.5 return语句 6.6 递归 6.7 函数原型 6.8 声明变长参数列表 6.9 传统的与现代的函数参数声明 第7章 结构、联合、枚举和用户定义的类型 7.1 结构 7.2 结构数组 7.3 向函数传递结构...

    C++虚基类 虚函数 虚析构函数

    #include "stdafx.h" #include using namespace std; class Base { public : virtual ~Base();//析构函数做成员函数 ...int main(int argc, char* argv[]) { Base*b=new Derived(); fun(b); return 0; }

    QT的参考文档及其教程

    请注意,所有被Qt识别的命令行参数都会从argv中被移除(并且argc也因此而减少)。关于细节请看QApplication::argv()文档。 注意:在任何Qt的窗口系统部件被使用之前创建QApplication对象是必须的。 QPushButton ...

    aybook.cn_c++jiaocheng0105.rar

    基础知识 7.1 函数的作用域准则 7.2 传递指针和数组 7.3 argc和argv:函数main()的参数 7.4 return语句 7.5 函数原型 7.6 头文件:进一步的学习 7.7 递归 第8章 函数,第二部分:引用,重载和默认参数 8.1 两种参数...

    C/C++之回调函数

    讨论下C/C++中的回调函数。  在理解“回调函数”之前,首先讨论下函数指针的概念。  函数指针  (1)概念:指针是一个变量...  int main(int argc,char* argv[])  {  printf("Hello World! ");  return 0

    MPI_Primes

    程序运行时变量线程数以及参数n,保存到main()函数设置参数argv [1],argv [0]为程序本身,只接受一个参数,所以argc的值只允许为2,若参数个数程序查找1到10000 * argv [1]之间的所有素数,通过多进程查找,各尽...

    《你必须知道的495个C语言问题》

    3.18 需要根据条件把一个复杂的表达式赋给两个变量中的一个。可以用下面这样的代码吗?((condition) ? a : b)= complicated_expression; 41  3.19 我有些代码包含这样的表达式。a ? b=c : d 有些编译器可以接受...

    深入学习C语言中的函数指针和左右法则

    int main(int argc, char* argv[]) { MyFun(10); //这里是调用MyFun(10);函数 return 0; } void MyFun(int x) //这里定义一个MyFun函数 { printf(“%d\n”,x); }  这个MyFun函数是一个无返回值的函数,它并不...

    中山大学C++例题及答案

    作业1:输入两个变量,输出两个变量的最大值。要求:使用C++语言,使用... int main(int argc, char* argv[]) { int a,b; cout输入两个数,求出最大值:" ; cin&gt;&gt;a&gt;&gt;b; cout最大值为:"(a,b); cin&gt;&gt;a; return 0;

Global site tag (gtag.js) - Google Analytics