C语言中int main()和float main()返回一个整型的值指什么 C语言中void main和int main有什么区别

C\u8bed\u8a00\u4e2dint main()\u8fd4\u56de\u4e00\u4e2a\u6574\u578b\u7684\u503c\u662f\u4ec0\u4e48\u610f\u601d

\u4f60\u5176\u5b9e\u95ee\u4e86\u4e00\u4e2a\u5f88\u590d\u6742\u7684\u95ee\u9898\uff0c\u7275\u6d89\u5230\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u7684\u751f\u6b7b\u8fc7\u7a0b\uff0c\u7ed9\u4f60\u7b80\u5355\u8bb2\u89e3\u5982\u4e0b\uff1a
\uff081\uff09\u4e00\u4e2aWindows\u5e94\u7528\u7a0b\u5e8f\u7684\u6267\u884c\u8fc7\u7a0b\u662f\uff1a
\u64cd\u4f5c\u7cfb\u7edf\u8c03\u7528C/C++\u8fd0\u884c\u671f\u542f\u52a8\u51fd\u6570->\u542f\u52a8\u51fd\u6570\u505a\u5b8c\u6240\u6709\u521d\u59cb\u5316\u5de5\u4f5c\u540e->\u8c03\u7528\u5e94\u7528\u7a0b\u5e8f\u8fdb\u5165\u70b9\u51fd\u6570\uff08\u5373\u6211\u4eec\u7684\u4e3b\u51fd\u6570\uff09
\uff082\uff09\u800c\u4e3b\u51fd\u6570\u8fd4\u56de\u65f6->\u542f\u52a8\u51fd\u6570\u4fbf\u8c03\u7528C/C++\u8fd0\u884c\u671f\u7684exit\u51fd\u6570\u3002
\uff083\uff09\u901a\u5e38\u6211\u4eec\u7684\u4e3b\u51fd\u6570\u6709\u8fd9\u6837\u4e00\u4e2a\u6574\u578b\u8fd4\u56de\u503c\uff0c\u5176\u610f\u4e49\u4e3a\uff1a\u5f53\u4e3b\u51fd\u6570\u8fd4\u56de\u65f6\uff0c\u8fd9\u4e2a\u8fd4\u56de\u503c\u5c31\u4f1a\u4f20\u9012\u7ed9\u8fd9\u4e2aexit\u51fd\u6570\u4f5c\u4e3a\u53c2\u6570\uff0cexit\u51fd\u6570\u5148\u505a\u5b8c\u6240\u6709\u6e05\u7406\u5de5\u4f5c\uff0c\u7136\u540e\u8c03\u7528\u64cd\u4f5c\u7cfb\u7edf\u7684ExitProcess\u51fd\u6570\u5e76\u5c06\u8fd4\u56de\u503c\u4f20\u9012\u7ed9\u5b83\uff0c\u8fd9\u4f7f\u5f97\u64cd\u4f5c\u7cfb\u7edf\u80fd\u591f\u64a4\u9500\u8fdb\u7a0b\u5e76\u8bbe\u7f6e\u9000\u51fa\u4ee3\u7801\u3002\u901a\u5e380\u8868\u793a\u6b63\u5e38\u8fd4\u56de\uff0c\u975e\u96f6\u7684\u5176\u4ed6\u503c\u8868\u793a\u51fa\u73b0\u9519\u8bef\u3002
\uff084\uff09\u6211\u4eec\u7684\u4e3b\u51fd\u6570\u53ef\u4ee5\u5b9a\u4e49\u4e3a\u7c7b\u4f3cvoid main()\u8fd9\u4e2a\u6837\u5b50\uff0c\u5373\u65e0\u8fd4\u56de\u503c\uff0c\u90a3\u4e48\u8fd9\u4e2a\u65f6\u5019\u5c31\u4e0d\u80fd\u7528return\u8bed\u53e5\u628a\u9000\u51fa\u4ee3\u7801\u4f20\u9012\u7ed9\u7236\u8fdb\u7a0b\u6216\u64cd\u4f5c\u7cfb\u7edf\uff0c\u6b64\u65f6\u64cd\u4f5c\u7cfb\u7edf\u53ef\u4ee5\u64a4\u9500\u8fdb\u7a0b\u4f46\u4e0d\u4f1a\u8bbe\u7f6e\u9000\u51fa\u4ee3\u7801\u3002\u5f53\u7136\u5728\u8fd9\u79cd\u60c5\u51b5\u4e0b\uff0c\u4f60\u8fd8\u662f\u6709\u529e\u6cd5\u8bbe\u7f6e\u9000\u51fa\u4ee3\u7801\uff0c\u90a3\u5c31\u662f\u663e\u5f0f\u5730\u8c03\u7528exit\uff08\u9000\u51fa\u4ee3\u7801\uff09\u3002
int main()
{
float a = 1.0;
printf("%f", a); // \u5728\u6807\u51c6\u8f93\u51fa\u8bbe\u5907\uff08\u4e00\u822c\u4e3a\u8ba1\u7b97\u673a\u7684\u663e\u793a\u5668\uff09\u4e0a\uff0c\u8f93\u51faa\u7684\u503c
return 0; // \u6b63\u5e38\u8fd4\u56de
}

1\u3001\u6709\u65e0\u8fd4\u56de\u503c
void main\u6ca1\u6709\u8fd4\u56de\u503c\uff0cint main\u6709\u8fd4\u56de\u503c\u3002
2\u3001\u8fd4\u56de\u503c\u7c7b\u578b
int main\u8fd4\u56deint\u7c7b\u578b\u7684\u6570\u636e\uff0cvoid main\u4e0d\u8fd4\u56de\u3002
\u4f46\u662f\u5728C\u8bed\u8a00\u63a8\u8350\u5199\u6cd5\u4e2d\uff0c\u5efa\u8bae\u4f7f\u7528int main\uff0c\u56e0\u4e3a\u5728\u6709\u7684\u7f16\u8bd1\u5668\u867d\u7136viod main\u53ef\u4ee5\u901a\u8fc7\u7f16\u8bd1\uff0c\u4f46\u5728\u5176\u4ed6\u7f16\u8bd1\u5668\u5c31\u4f1a\u62a5\u9519\u3002\u4e3a\u4e86\u4ee3\u7801\u62e5\u6709\u66f4\u597d\u7684\u53ef\u79fb\u690d\u6027\uff0c\u4e00\u822c\u5199int main\u3002


\u6269\u5c55\u8d44\u6599\u4ee3\u7801\u793a\u4f8b
#include int main(void){ printf("Hello, World! \n"); return 0;
}
\u4e0a\u8ff0\u7684\u4ee3\u7801\u4e2d\u4e3aint main\uff0c\u8fd4\u56de\u4e86\u4e00\u4e2a0\uff0c\u6570\u636e\u7c7b\u578b\u4e3aint\u3002
\u6570\u636e\u7c7b\u578b
void\uff1a\u58f0\u660e\u51fd\u6570\u65e0\u8fd4\u56de\u503c\u6216\u65e0\u53c2\u6570\uff0c\u58f0\u660e\u65e0\u7c7b\u578b\u6307\u9488\uff0c\u663e\u793a\u4e22\u5f03\u8fd0\u7b97\u7ed3\u679c\u3002\uff08C89\u6807\u51c6\u65b0\u589e\uff09
char\uff1a\u5b57\u7b26\u578b\u7c7b\u578b\u6570\u636e\uff0c\u5c5e\u4e8e\u6574\u578b\u6570\u636e\u7684\u4e00\u79cd\u3002\uff08K&R\u65f6\u671f\u5f15\u5165\uff09
int\uff1a\u6574\u578b\u6570\u636e\uff0c\u8868\u793a\u8303\u56f4\u901a\u5e38\u4e3a\u7f16\u8bd1\u5668\u6307\u5b9a\u7684\u5185\u5b58\u5b57\u8282\u957f\u3002\uff08K&R\u65f6\u671f\u5f15\u5165\uff09
float\uff1a\u5355\u7cbe\u5ea6\u6d6e\u70b9\u578b\u6570\u636e\uff0c\u5c5e\u4e8e\u6d6e\u70b9\u6570\u636e\u7684\u4e00\u79cd\u3002\uff08K&R\u65f6\u671f\u5f15\u5165\uff09
double\uff1a\u53cc\u7cbe\u5ea6\u6d6e\u70b9\u578b\u6570\u636e\uff0c\u5c5e\u4e8e\u6d6e\u70b9\u6570\u636e\u7684\u4e00\u79cd\u3002\uff08K&R\u65f6\u671f\u5f15\u5165\uff09
\u53c2\u8003\u8d44\u6599\u6765\u6e90\uff1a\u767e\u5ea6\u767e\u79d1-c\u8bed\u8a00

程序员都知道main的返回值是int类型,返回不同的值代表不同的意思,例如返回0代表程序正确结束,返回1代表程序异常结束。但是我们大部分时候都用不到这个返回值,有时候干脆省略返回值编译器也不会报错。main函数似乎只是一个入口,那为什么不定义成void类型的呢?因为C的早期版本只有四种内嵌基本数据类型:char,int,float,double,没有void。但是有些函数不需要返回类型,如典型的main函数,而编译器却要求一个返回类型。所以当函数的定义中没有定义返回类型时,编译器隐式的返回了int类型。因此早期的main函数本意是要返回void类型,但是技术上返回int,尽管你可以不写返回值,但也可以返回一个int类型的值。虽然C的标准中加入了void类型,但是因为历史遗留问题,main的返回值人还是int,甚至有时显示的定义它为int,也可以空着默认他为int,还可以定义为void,当然这和具体的平台和编译器相关。
每个C程序必须有一个名字为main()的函数,系统将从这个函数开始执行。由main()返回的int值,如果有的话,就是这个程序返回给“系统”的值。如果没有值被返回,系统将得到一个表示程序成功完成的值。来自main()的非0值表示出错。

在main() 前面加int ,或void 其主要作用是判断程序是否结束了。。如此而已。。

有些C++的编译器(VC++就是典型的)允许程序员使用返回void的main()函数,如果是定义成这样的话,那么就不用return 0;了。不过,这样做不是好习惯,因为ISO标准中的main必须定义为int main(),如果定义为void main()就不是标准C++了,会影响代码的可移植性(别的编译器不一定允许这样做)。

推荐你还是使用标准的定义,不要养成这个坏习惯!

扩展阅读:c语言printf输出格式 ... int main已有主体 ... faint 中文翻译 ... int main()括号里填什么 ... int main怎么读 ... continue 中文翻译 ... int main void ... int main在c语言中的作用 ... c语言voidmain ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网