c语言使用scanf_s输入时,保存的内容是中文乱码的解决方案
生活随笔
收集整理的這篇文章主要介紹了
c语言使用scanf_s输入时,保存的内容是中文乱码的解决方案
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
vs使用scanf_s輸入中文時,保存的結(jié)果是亂碼。有時還會顯示"字符串中的字符無效"
就比如這段代碼:
#include<stdio.h> int main(void) {char arr[20] = { 0 };scanf_s("%s", arr, 20);printf("%s \n", arr);return 0; }當(dāng)輸入 中文 時,保存的結(jié)果每次都不一樣(在這個代碼之前做了個相同的循環(huán),重復(fù)保存,每次保存的結(jié)果都不一樣)
有時輸入中文,或者四個及以上的中文時,存儲內(nèi)容就變成了:字符串中的字符無效
百度查詢只查詢到讀取時的解決方法,對我這個并沒有什么用。
解決方法
被折磨了許久之后,我想起來之前使用vs code 的時候,為了解決控制臺輸出中文亂碼的問題,將Beta版語言支持打開了,去關(guān)閉之后解決了這個問題
正常的樣子:
目前本人暫時沒有看到相同的問題文章及解決文章,如果撞上請諒解。
插句題外話,vs code終端在使用printf輸出中文時亂碼問題,可以通過打開Beta版語言支持解決。
如果關(guān)閉Beta版語言支持導(dǎo)致輸出中文亂碼,可參考
vs2019控制臺輸出中文亂碼問題
總結(jié)
以上是生活随笔為你收集整理的c语言使用scanf_s输入时,保存的内容是中文乱码的解决方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机鼠标老跳动,用win10系统,鼠标
- 下一篇: C/C++程序员简历