使用VS编写c语言代码时:在一个项目下放了多个源文件(如下面放了两个文件),在运行时就会出现报错: LNK2005 main 已经在 test.obj 中定义
原因:
由于当前的解决方案或工程文件中存在了两个及以上的main()函数(多个源文件就会有多个main函数),而main函数又是程序的入口,程序只能从一个入口进入。多个入口的话,程序不知从哪个入口进入从而导致报错。
解决方法:
方法1:
注释或删去另外的程序,只保留其中要运行的那个
点击不需要编译的源文件右键,点击“移除”再点击“删除”’。
方法2:
将不需要编译的源文件属性改变
点击不需要编译的源文件右键,点击属性,选择“从生成中排除”,输入“是”或选择“是”,点击“确认”,最后排除的文件右下角有红标。