SetConsoleOutputCP CP_UTF8 保存文件和控制台输出 确保使用宽字符的版本 由于历史原因,为了兼容性,Windows分为多字节字符集API和UNICODE字符集API(UTF-16)。如果将UTF-8编码的文本内容直接用于调用多字节字符集的API,很容易导致各种问题。 首先确保项目配置了UNICODE字符集API: ...
3. 实例代码 #include<stdio.h>#include<windows.h>intmain(){// 输出中文,防止乱码SetConsoleOutputCP(CP_UTF8);intnRow,nCol,nRes;printf("乘法口诀表\n");// 循环行for(nRow=1;nRow<10;nRow++){// 循环列for(nCol=1;nCol<=nRow;nCol++){nRes=nRow*nCol;// -3d表示左对齐,占3位printf("%d*%d=...
解决方案一涉及直接修改源代码。添加头文件并调用API函数`SetConsoleOutputCP(65001)`,将控制台程序输出的代码页编码设置为utf-8格式。解决方案二建议使用记事本打开C程序文件,通过点击【文件】-【另存为】选项,选择ANSI编码格式并替换原文件。对于在vs code中运行出现中文乱码的情况,通常将编码格式从utf-...
直接修改源代码,增添头文件<windows.h>和调用API函数SetConsoleOutputCP(65001),设置控制台程序输出的代码页编码为utf-8格式 方案一 解决方案二 以记事本方式打开C程序文件,点击【文件】--【另存为】,选择ANSI编码格式并替换原文件 方案二 解决方案三 如果是在vs code运行出现中文乱码,一般是将编码格式从utf-8修改...
用SetConsoleOutputCP函数修改语言。printf(“\t”)。可以跳一个制表符,大概是4个字符的宽度,即4个空格。按照例子编码后发现乱码,根据提示,使用SetConsoleOutputCP函数修改语言即可。用i控制行,j来控制列,根据i+j的和的变化来控制输出黑方格,还是白方格。
例1中,我们用printf()函数实现在控制台输出了hello world!然而当我们想要将之前输出的内容清除时,在stdio.h中的函数并不能满足我们的需求;这时我们就要借助于win32 api函数 例2: #include <stdio.h>#include<windows.h>intmain() { printf("Hello World!\n"); ...
SetConsoleOutputCP(437); printf("\1\1\n"); //输出两个笑脸 for(i=1;i<11;i++) { for(j=1;j<=i;j++) { printf("%c%c",219,219); } printf("\n"); } } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ...
解决办法:在程序中添加SetConsoleOutputCP(437);同时注意不要忘记头文件#include <windows.h>,否则会报错。正确代码如下: 编译运行即可显示正确的小方格: 同时,此时点击左上方==>属性,选择“选项”,可以看到 当前代码页 显示为 437。 总结: SetConsoleOutputCP函数功能:用于设置控制台程序输出代码页。代码页是字符集编码...
直接修改源代码,增添头文件<windows.h>和调用API函数SetConsoleOutputCP(65001),设置控制台程序输出的代码页编码为utf-8格式 方案一 解决方案二 以记事本方式打开C程序文件,点击【文件】--【另存为】,选择ANSI编码格式并替换原文件 方案二 解决方案三 如果是在vs code运行出现中文乱码,一般是将编码格式从utf-8修改...
;printf("\n");}printf("%d期利息和%.2f:\n",N,lixi_and);printf("%d期本金和%.2f:\n",N,benjin_and);printf("利息占比:%.2f%%\n",(lixi_and/(benjin_and+lixi_and))*100);printf("\n完成");scanf("%c",&Z);}intmain(){SetConsoleOutputCP(936);// 设置控制台输出编码为 GBKfloat ...