
请不要用void main()的形式,因为它是不标准的形式,正确的形式为:
int main(void)
void表示没有,在自定义的函数中,可以用void作返回值类型,但是main函数不推荐
答案:C
C。解析在C语言中,main()函数也可以有参数,例如,main(intar90,charargv),argc是指字符串的指针数组,而其他几项表达不正确。
不合法的是B,
main带参数主要是为了用命令行方式运行,第一个参数的意义是参数的个数,是个整形值,第二个参数的意义是参数的具体内容,是字符串数组(一般用写成二级指针)。
这种方式和我们在命令提示符下输命令运行是一样的。
int main(void);
int main(int argc,char argv[]);
ISO C99标准定义了以上两种。
由于ANSI C89/ISO C90中返回值可以被省略而默认为int,所以main(void);也可以作为原型。(新标准取消了这个特性。)
以上只是标准规定的形式入口函数原型。其余的入口函数(甚至可以不叫main)由实现定义,取决于平台(编译器)。注意非标准的入口函数会导致代码可移植性差。例如对于控制台程序,Microsoft C&C++ Compiler支持void main(),但这样的代码在GCC上无法通过编译。
C语言中()参数列表表示可以接受任意类型和个数的参数(对应C++中的()),而(void)不接受参数(对应C++中的()),两者有所区别。不过一般C的入口函数实现中前者兼容后者。于是int main();作为C++标准入口函数形式之一(另一种是int main(int argc,char argv[]);),事实上和C通用。
另外一种非标准通常形式为int main(int argc,char argv[] char envp[]),envp表示传入的环境变量。
一般来说,除非限制了特定的平台(在一些特定的场景如Linux内核程序中,应该使用void main();),对于控制台程序最好只使用标准定义的入口函数形式或者int main();。即使用VC++,void main();也一般不是被推荐的。main的返回值传递给调用者( *** 作系统/父进程),通常0表示正常退出,非0表示非正常退出。如果使用void main();,控制台程序的返回值是不确定的,和平台相关。
====
[原创回答团]
public
static
void
main(String[]
args)throws
Exception
{}
main方法被声明为静态方法(static),一般在一个类里面定义这样的main方法对该类进行一些简单的测试。main方法就这一种声明格式。
1public
定义main方法的访问权限为公有的。
2static
声明为静态方法,静态方法是属于类的,在没实例化之前就可以使用。
3void
声明返回方式。
4如果在main方法里面会抛出异常且未当场处理时需加上throws
Exception,否则可以不用,Exception
可以是你自己定义的异常。
5重点介绍一下main函数的参数
String[]
args
:
String[]
args是main函数的形式参数,可以用来获取命令行用户输入进去的参数。声明main函数的时候一定要在括号里写上它,否则会报错。
举个用到String[]
args的例子,可能不能运行,权当给你理解用。
class
Example
{
public
void
main(String[]
args)
{
Systemoutprintln(args[0]);
Systemoutprintln(args[1]);
}
}
那么这个程序在执行的时候就需要向main函数传递形式参数的值,好让main函数完成打印的功能。
注:String[]
args显示args是一个String类型的数组,args[0]、args[1]是头两个元素。
执行时在控制台输入:straul
good
后面两个字符串随便写什么,它们作为实参传入main函数,straul传入args[0],good传入args[1]。
那么屏幕会出现:
straul
good
这和在main函数里调用其他函数并且向被调用函数传递参数是一样的道理,只不过传给main函数罢了。
希望对你有用!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)