问答详情
源自:3-4 强者争霸

缺少类型说明符 - 假定为 int。 注意: c + + 不支持默认值-int

#include <stdio.h>

#include <iostream>

main(int argc, char** aggv)

{

std::cout << "int:\n" << sizeof(int) << std::endl;

}

\\1-在visual studio 2019运行报错,错误代码C4430,微软官方的解释看不懂....?

\\2-按照百度的解答,将在main函数前加void,即void main(int argc, char** aggv),运行成功,原理究竟是什么呢..

提问者:查查先生 2021-04-25 01:03

个回答

  • Redknot
    2021-04-25 15:32:55
    已采纳

    main 函数的返回值是 int,这是标准里面写明白的,但是 vs 向来允许开发者使用 void 作为返回值。这也是市面上很多教材里写的 main 函数的返回值是 void 的原因。微软是始作俑者。

    而对于你这段程序,错误的原因是 main 函数没有写返回值。你应该为 main 申明一个 int 的返回值,并在函数结束的地方return

    #include <stdio.h>

    #include <iostream>

    int main(int argc, char** aggv)

    {

    std::cout << "int:\n" << sizeof(int) << std::endl;

    return 0;

    }


  • weixin_慕虎9056569
    2022-02-03 22:36:20

     C和C++语言要求要清理内存的,不要忘记main函数结束的return 0语句。