在Visual C++ 6.0中无法使用gets()函数的解决办法
问题#
昨晚遇到一个有意思的问题,明明在Visual Studio 2019运行好好的C语言代码,Copy到Visual C++ 6.0中就无法编译通过了,错误提示信息如下:
error C2143: syntax error : missing ';' before 'type'
这就有意思了,明明在Visual Studio 2019中运行的好好的,复制到Visual C++ 6.0就报错缺少分号呢,哈哈。
通过错误信息定位到代码的具体位置,发现错误都是在gets函数的下一行中。只要把gets注释掉就可以编译通过。难道是Visual C++ 6.0中不支持gets()函数?不应该啊。上网查一下,各种各样的说法,都没有解决问题。
解决办法#
最后重新建了一个Visual C++ 6.0再把代码复制进来,居然可以运行了。通过对比发现之前是直接把.c后缀的文件拖进来,vc6.0的.c后缀文件中没法使用gets()函数,需要文件名为.cpp后缀才可以。所以:
把.c后缀的源代码文件改为.cpp后缀。
作者:重庆熊猫
出处:https://www.cnblogs.com/cqpanda/p/16240978.html
版权:本作品采用「不论是否商业使用都不允许转载,否则按3元1字进行收取费用」许可协议进行许可。
本文来自博客园,作者:重庆熊猫,转载请注明原文链接:https://www.cnblogs.com/cqpanda/p/16240978.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)