C++主函数main带参数的用法,详细点最好
int main(int argc,char **argv)
里面的argc是参数个数,
**argv 是参数列表.
注意,这里的参数个数等不是让你来传递的,是c程序最开始的部分调用main函数时传递给main()函数的.
比如你的测试程序是test.exe,代码里面就是这个int main(int argc,char **argv)
那么你执行的时候就要在命令行模式下执行..
我还是给你写个例子吧
例子如下:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *agrv[])
{
printf("test main()\n");
if (3 == argc)
{
printf("argc = 3, agrv[0] = %s\n", agrv[0]);
}
else
{
printf("argc = %d\n", argc);
}
system("pause");
}
上述代码只是随便测试一下,让你知道怎么调用带参数的main
你在vc中编译一下,我这里生成的是ss.exe.
调用的时候要在命令行下,如图.
此时,看我输入的东西.
第一个参数是ss.exe, 切记,这就是第一个参数.
后面的how是第二个,
are是第三个,
参数之间用空格分隔.
这样明白了.吧
不明白发信给我.
是标准写法
当然也可以写成:int main(int argc,char **argv) 或int main()
就像中华人民共和国又称作中国一样.需要的时候使用全称,不需要的时候就使用简称.
int 的Main函数的返回值
当你的程序以正常态运行后,你需要return 0给操作系统.让操作系统知道你的程序正常结束了.
argc 是你参数的个数 它最小值是1
argv 是参数的实际值
我编译了一个文件叫做a.exe
我在Windows命令行下 调用这个程序 "a.exe -a"
那么 操作系统会传递给Main函数两个参数
即 argc=2;
一个参数是a.exe这个文件的URL
如: "c:\a.exe"
另一个参数就是"-a"
无论你调用这个程序是否加了参数,操作系统总是会把这个文件的URL当作第一个参数传递给主函数.
当然有时候我们不需要参数
那么 就直接写成
int main();
如果是C语言的话 要写成 int main(void) 因为C++里空括号的含义与C语言并不相同