解决Dev-C++中使用fscanf函数引入中文乱码的问题
在C语言使用fscanf函数的时候,引入中文可能出现乱码的情况,本篇文章用来解释问题产生的原因并提供解决办法。
乱码问题
上图是在电脑自带记事本中打开这个演示文件所呈现出来的效果,为了使问题暴露的更加直接,可以将这个文件直接拖入Dev-C++。
上图是显示的结果,可以看到乱码了,这时候其实能够想到一些东西,乱码是文件本身和Dev-C++之前产生了不兼容。
解决办法
先搞清乱码产生的原因,是因为Dev-C++软件对中文编码模式要求是ANSI的,而咱们平常使用的编码格式都是UTF-8的,所以解决办法也很简单,就是将文件的编码模式调为ANSI。
在记事本中打开文件,点击左上文件后,点击另存,将编码模式改为ANSI,点击保存。
再在Dev-C++中打开就能正常的显示了。
心得体会
这个问题用了三个小时,其中大部分时间都在找问题发生在哪一部分,解决问题大概用了半个小时,有时候感觉解决不了的问题,其实它可能根本不是你要解决的问题,正确准确的找到问题很关键。