c/c++ main 函数命令行参数的使用 知识小结
2013-01-01 02:40
218 查看
C程序最大的特点就是所有的程序都是用函数来装配的。main()称之为主函数,是所有程
序运行的入口。其余函数分为有参或无参两种,均由main()函数或其它一般函数调用,若调用
的是有参函数,则参数在调用时传递。
C/C++语言中的main函数,经常带有参数argc,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所示。
数组的各指针分别指向一个字符串。应当引起注意的是接收到的指针数组的各指针是从命令行的开始接收的,首先接收到的是命令,其后
才是参数。
下面的程序演示argc和argv的使用:
[cpp]
view plaincopyprint?
#include<iostream>
using namespace std;
int main(int argc,char **argv){
for(int i=0;i<argc;i++)
cout<<"Argument "<<i<<" is "<<argv[i]<<endl;
return EXIT_SUCCESS;
}
该程序编译运行成功,产生了 test.exe 文件,在打开DOS窗口,用cd命令进入到 test.exe 文件夹下 ,在DOS下输入如下命令:
test.exe
hello! this is a test!
则运行的结果如下:
/article/9216236.html
序运行的入口。其余函数分为有参或无参两种,均由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所示。
数组的各指针分别指向一个字符串。应当引起注意的是接收到的指针数组的各指针是从命令行的开始接收的,首先接收到的是命令,其后
才是参数。
下面的程序演示argc和argv的使用:
[cpp]
view plaincopyprint?
#include<iostream>
using namespace std;
int main(int argc,char **argv){
for(int i=0;i<argc;i++)
cout<<"Argument "<<i<<" is "<<argv[i]<<endl;
return EXIT_SUCCESS;
}
#include<iostream> using namespace std; int main(int argc,char **argv){ for(int i=0;i<argc;i++) cout<<"Argument "<<i<<" is "<<argv[i]<<endl; return EXIT_SUCCESS; }
该程序编译运行成功,产生了 test.exe 文件,在打开DOS窗口,用cd命令进入到 test.exe 文件夹下 ,在DOS下输入如下命令:
test.exe
hello! this is a test!
则运行的结果如下:
/article/9216236.html
相关文章推荐
- c/c++ main 函数命令行参数的使用 知识小结
- c/c++ main 函数命令行参数的使用
- 使用sqlite3(数据库知识)的接口函数完成一个用户注册功能模块设计 要封装成函数,在独立的main中调用测试
- C++知识学习--虚函数介绍和使用
- C/C++—— 分析命令行参数的getopt()函数使用介绍
- java 命令行参数-main()函数-需要使用命令行
- C++常用函数的使用方法小结
- c/c++ main 函数命令行参数的使用 知识小结
- C++中使用pthread.h头文件报错 - 无法解析的外部符号 __imp__pthread_create,该符号在函数 _main 中被引用
- C++中使用pthread.h头文件报错 - 无法解析的外部符号 __imp__pthread_create,该符号在函数 _main 中被引用
- C++中使用pthread.h头文件报错 - 无法解析的外部符号 __imp__pthread_create,该符号在函数 _main 中被引用
- C++中函数使用的基本知识学习教程
- c++知识点---函数模板的使用
- c++虚表的使用 通过虚表调用虚函数的演示代码
- C++静态成员函数小结
- C/C++函数使用
- C++ 原来 const 中所使用的函数 必须 全都具有 const 才行
- C++知识碎片整理(7)——inline(内联)函数
- C++ 类知识部分小结
- c++ 函数指针使用实例