c语言基础框架

文章探讨了在Win11环境下,使用gcc编译C语言时遇到的中文乱码问题。问题源于Notepad++默认的UTF-8编码在控制台上显示为乱码,而改为ANSI编码后问题解决。作者排除了gcc不支持UTF-8的可能性,指出问题可能在于控制台的编码支持。总结来说,编译器对各种编码兼容,但控制台可能只支持特定编码,如ANSI。
摘要由CSDN通过智能技术生成
环境工具说明

win11 + gcc编译器+c语言+Notepad++

C语言基础框架
//c语言基础框架
#include <stdio.h>   // 编译预处理指令

int main()  // 入口函数 主函数
{           // 程序开始的标识
  printf("想要做的事情");
  return -1;   // 返回给调用者(操作系统)的值
}           // 程序结束的标识

在这里插入图片描述

思考 中文乱码问题

上图打印结果中,Notepad++编写的c语言默认是utf-8的(在win11系统下编码的),保存后在win系统控制台输出的是乱码,但是在Notepad++中将编码格式从utf-8修改为“转为ANSI”编码,保存后控制台乱码问题解决。
这里纠结了下他的原因,为啥这里会出现中文乱码呢?
然后百度 嗖嗖嗖 找到了一篇我比较能接受的文章:

https://www.cnblogs.com/woyujiezhen/p/14818557.html#:~:text=gcc%E7%BC%96%E8%AF%91C%E4%BB%A3%E7%A0%81%E5%90%8E%EF%BC%8C%E8%BE%93%E5%87%BA%E4%B9%B1%E7%A0%81,%E5%BE%88%E5%A4%A7%E5%8F%AF%E8%83%BD%E6%98%AFgcc%E4%B8%8D%E6%94%AF%E6%8C%81utf-8%EF%BC%8C%E6%8A%8AC%E4%BB%A3%E7%A0%81%E6%96%87%E4%BB%B6%E6%94%B9%E6%88%90GBK%E5%8D%B3%E5%8F%AF%E3%80%82%20%E5%8D%B3IDEA%E5%BC%80%E5%8F%91Java%E6%98%AF%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AE%E5%85%A8%E9%83%A8%E7%9A%84UTF-8%2C%E6%8A%8A%E8%BF%99%E4%BA%9BUTF-8%E6%94%B9%E4%B8%BAGBK.%E5%8D%B3%E5%8F%AF%E3%80%82

大致的意思是:
作者怀疑中中文乱码可能是gcc不支持utf-8,但是后来通过类比其他的编译器,比如"clang 中文乱码"、“powershell中文乱码”,又想到可能不是编译器的问题,最终才知道问题出在控制台上面在这里插入图片描述

总结起来就是,编译器是包容所有编码的,只是控制台显示不支持。

严谨

上述评论这是个人学习中的陋见,只是为了个人学习记录,以便于后续复习回顾。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值