main函数学习
C++是一种面向对象的开发语言,但是C++程序却并非向Java等语言一样,完全面向对象。C++程序包括C语言/C++语言/STL/范型编程等内容(From :《Effective C++》)。
作为入口函数的main函数需要返回int类型,函数参数不是必须的。定义如下:
int main()
{
//代码:程序主体函数或者UI主线程
return 0/*int 类型标识*/;
}
mian函数也可以定义为带参数形式,参数argc表示参数数组的大小,即参数的个数,argv是一个指针数组,数组每个元素指向一个字符串,即每个参数。main函数默认将可执行程序名称作为第一个参数。以下在linux环境下做的测试:
#include<iostream>
int main(int argc,char *argv[])
{
for(size_t i = 0;i < argc;i++)
{
std::cout<<"第"<<i<<"个参数";
std::cout<<argv[i]<<std::endl;
}
return 0;
}
测试程序遍历参数个数,将每个参数打印出来。在linux环境下,编写完代码(使用vim编辑器编写),编译程序(使用g++编译器,g++编译器属于gcc编译工具集的一部分,对c++的cpp文件进行编译)。编译完成后,执行程序,可以选择不加参数执行,输出默认程序名称;带参数执行,将输出所有参数。如下:
gispipi@ubuntu:~/workspace/hello$ vim hello.cpp
gispipi@ubuntu:~/workspace/hello$ g++ hello.cpp -o hello
gispipi@ubuntu:~/workspace/hello$ ls
hello hello.cpp
gispipi@ubuntu:~/workspace/hello$ ./hello
第0个参数./hello
gispipi@ubuntu:~/workspace/hello$ ./hello abc def
第0个参数./hello
第1个参数abc
第2个参数def
gispipi@ubuntu:~/workspace/hello$