main是C语⾔⾥的什么定义,Main的正确声明是什么?
⼿掌⼼
这个main函数必须声明为全局命名空间中的⾮成员函数。这意味着它不能是类的静态或⾮静态成员函数,也不能放在名称空间中(甚⾄是未命名的命名空间)。名字main不在C+中保留,除⾮作为全局命名空间中的函数。您可以⾃由声明其他名为main,包括不在全局命名空间中的类、变量、枚举、成员函数和⾮成员函数。您可以声明⼀个名为main作为成员函数或命名空间中的函数,但是这样的函数不会是main函数,该函数指定程序开始的位置。这个main函数不能声明为static或inline..它也不能重载;只能有⼀个名为main在全局命名空间中。这个main函数不能在程序中使⽤:不允许调⽤main函数在代码中的任何位置,也不允许您获取其地址。返回类型main⼀定是int..不允许其他返回类型(此规则为粗体,因为经常会看到不正确的程序声明。main返回类型为void;这可能是最经常违反的关于main职能)。有两个声明main必须允许这样做:int main()              // (1)int main(int, char*[])  // (2)在……⾥⾯(1),没有参数。在……⾥⾯(2),有两个参数,它们通常被命名为argc和argv分别。argv指向表⽰程序参数的C字符串数组的指针。argc中的参数。argv阵列。通常,argv[0]包含程序名称,但并不总是如此。argv[argc]保证为空指针。注意,由于数组类型参数(如char*[])实际上只是⼀个变相的指针类型参数,下⾯两种都是有效的
编写⽅法(2)他们的意思完全⼀样:int main(int argc, char* argv[])int main(int argc, char** argv)有些实现可能允许其他类型和数量的参数;您必须检查实现的⽂档以确定它⽀持什么。main()预期返回零表⽰成功,⾮零表⽰失败。不需要显式地编写return声明main()*如果你让main()不显式返回return声明,就像你写的⼀样return 0;..以下两个main()函数具有相同的⾏为:
int main() { }int main() { return 0; }有两个宏,EXIT_SUCCESS和EXIT_FAILURE,定义为也可以从main()分别表⽰成功和失败。返回的值main()传递给exit()函数,它终⽌程序。请注意,所有这些只在为宿主环境进⾏编译时才适⽤(⾮正式地说,在这种环境中,您有⼀个完整的标准库,并且有⼀个运⾏您的程序的操作系统)。还可以为独⽴环境(例如,某些类型的嵌⼊式系统)编译C+程序,在这种情况下,启动和终⽌是完全由实现定义的,main()功能可能甚⾄不需要。但是,如果您是为现代桌⾯操作系统编写C+,则是为托管环境进⾏编译。
>嵌入式系统是什么意思

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。