鱼C论坛

 找回密码
 立即注册
查看: 522|回复: 1

VScode运行错误

[复制链接]
发表于 2023-12-3 15:31:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
PS C:\Users\92474\Desktop\test> cd "c:\Users\92474\Desktop\test\" ; if ($?) { gcc qindow.c -o qindow } ; if ($?) { .\qindow }
F:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/lib/../lib/libmingw32.a(lib64_libmingw32_a-crt0_c.o):crt0_c.c:(.text.startup+0x2e):
undefined reference to `WinMain'
collect2.exe: error: ld returned 1 exit status

请问一下大佬们这个咋回事刚搭建好本来是好的不知道我点了什么就变这样了。
还有就是好的时候英文正常输出中文是乱码用了小甲鱼的方法也不管用,请大佬们指教!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-3 15:31:18 | 显示全部楼层
从错误提示可以看出,这个问题是由于缺少WinMain函数引起的。在Windows环境下,可执行文件的入口函数是WinMain而不是常见的main函数。

解决方法如下:
1. 确保代码中有一个名为WinMain的函数。它的定义应该类似于下面的形式:
  1. int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
  2. {
  3.     // your code here
  4.     return 0;
  5. }
复制代码

2. 如果你只是想运行一个简单的命令行程序,可以将代码修改为使用main函数作为入口函数。只需要将WinMain改为main即可。修改后的代码如下:
  1. int main()
  2. {
  3.     // your code here
  4.     return 0;
  5. }
复制代码

至于输出中文乱码的问题,在代码中使用`printf`函数输出中文字符可能会导致乱码的问题。解决方法是使用`wprintf`函数代替`printf`函数,并且在文件头添加`#include <wchar.h>`。
  1. #include <stdio.h>
  2. #include <wchar.h>
  3. int main()
  4. {
  5.     wprintf(L"你好,世界\n");
  6.     return 0;
  7. }
复制代码

希望以上解决方案能够帮助到你,如果还有其他问题,请随时提问。

以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 04:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表