我会把一些常见问题以及自己编写代码过程中遇到的问题以及解决方案放在这里,各位若是遇到的问题也可以在评论区留言。
一、头文件Error
不会影响编译运行,但会报Warm,如下图
解决方案是安装Include Autocomplete扩展。
二、编码错误
VS Code输出会出现乱码,很多人都遇到过。这是因为VS Code内部用的是utf-8编码,cmd/powershell是gbk编码。直接编译,会把“你好”输出成“浣犲ソ”。如果把cmd的活动代码页改成65001,会出现汉字只能显示一半的问题。Linux就没有这个问题。
原本的解决方法是使用gcc,编译时用-fexec-charset=GBK这个参数,生成的程序就是GBK编码的。但是,clang的execution-charset supports only UTF-8。所以,生成的程序在cmd/ps以及VS Code的终端(其实也是powershell)中运行,输出中文还是会乱码;但是在VS Code的“输出”中就是正常的。如果想解决这个问题,可以百度“宽字符输出”。
如果是打开已有的以GBK编码的文件,VS Code会以UTF-8编码打开,这样编辑器内的中文会乱码,不过对于初学C的同学来说,写的代码一般只有注释是中文。此时要点右下角的GBK,选“通过编码重新打开”,选UTF-8即可。或者装一个GBKtoUTF8插件。
这样做了以后,在含有中文的路径下可以编译,但是仍然不能调试,所以还是把代码放到不含中文的路径中吧。