C++学习记录02
2013-10-19 12:26
369 查看
今天的学习,遇到的问题。
1,argc argv[]是什么意思,为什么定义主函数时,要这样写
int main(int argc, char* argv[])
百度了一下,解释是这样的:
argc是命令行总的参数个数
argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数
命令行后面跟的用户输入的参数,比如:
int main(int argc, char* argv[])
{
int i;
for (i = 0; i<argc; i++)
cout<<argv[i]<<endl;
cin>>i;
return 0;
}
执行时敲入
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE aaaa bbb ccc ddd
输出如下:
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE
aaaa
bbb
ccc
ddd
argc,argv 用命令行编译程序时有用。主函数main中变量(int argc,char *argv[ ])的含义有些编译器允许将main()的返回类型声明为void,这已不再是合法的C++main(int argc, char *argv[ ], char **env[ ])才是UNIX和Linux中的标准写法。argc: 整数,用来统计你运行程序时送给main函数的命令行参数的个数* argv[ ]: 字符串数组,用来存放指向你的字符串参数的指针数组,每一个元素指向一个参数argv[0] 指向程序运行的全路径名argv[1] 指向在DOS命令行中执行程序名后的第一个字符串argv[2] 指向执行程序名后的第二个字符串...argv[argc]为NULL。**env:字符串数组。env[ ]的每一个元素都包含ENVVAR=value形式的字符串。其中ENVVAR为环境变量,value 为ENVVAR的对应值。argc, argv,env是在main( )函数之前被赋值的,编译器生成的可执行文件,main( )不是真正的入口点,而是一个标准的函数,这个函数名与具体的操作系统有关。
1,argc argv[]是什么意思,为什么定义主函数时,要这样写
int main(int argc, char* argv[])
百度了一下,解释是这样的:
argc是命令行总的参数个数
argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数
命令行后面跟的用户输入的参数,比如:
int main(int argc, char* argv[])
{
int i;
for (i = 0; i<argc; i++)
cout<<argv[i]<<endl;
cin>>i;
return 0;
}
执行时敲入
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE aaaa bbb ccc ddd
输出如下:
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE
aaaa
bbb
ccc
ddd
argc,argv 用命令行编译程序时有用。主函数main中变量(int argc,char *argv[ ])的含义有些编译器允许将main()的返回类型声明为void,这已不再是合法的C++main(int argc, char *argv[ ], char **env[ ])才是UNIX和Linux中的标准写法。argc: 整数,用来统计你运行程序时送给main函数的命令行参数的个数* argv[ ]: 字符串数组,用来存放指向你的字符串参数的指针数组,每一个元素指向一个参数argv[0] 指向程序运行的全路径名argv[1] 指向在DOS命令行中执行程序名后的第一个字符串argv[2] 指向执行程序名后的第二个字符串...argv[argc]为NULL。**env:字符串数组。env[ ]的每一个元素都包含ENVVAR=value形式的字符串。其中ENVVAR为环境变量,value 为ENVVAR的对应值。argc, argv,env是在main( )函数之前被赋值的,编译器生成的可执行文件,main( )不是真正的入口点,而是一个标准的函数,这个函数名与具体的操作系统有关。
相关文章推荐
- C++学习之旅记录hello world
- C++学习记录(留坑)
- C++学习记录 (20180208)
- Hibernate学习-02:Hibernate的日志记录
- c++ 学习笔记(02AM)
- C++ VARIANT 学习小记录
- Qt学习记录--02 Qt的信号槽机制介绍(含Qt5与Qt4的差异对比)
- 可持久化数据结构 12 - 02 学习记录
- C++学习、成长记录(2011-2012第一学期第18周)
- 算法学习记录七(C++)--->二分法找有序旋转数组最小值
- 【记录】Accelerated C++:Practical Programming by Example第0章:开始学习C++
- C++学习记录2--常量及运算符释疑
- 算法学习记录四(C++)--->通过前序和中序序列重建二叉树
- C++学习记录
- Lua和C++交互 学习记录之三:全局值交互
- C++中关于类型转换的学习记录
- edis学习记录02-redis基础数据类型命令
- c++ prime学习记录:面对对象编程之转换与继承
- c++学习记录2
- [2017.02.04] C++学习记录(1)