英文用ASCII(8比特),简体中文用GB2312,繁体中文用BIG5;
而UNICODE(万国码,统一码,16比特)则是全世界统一使用的,它是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
UNICODE,GBK,BIG5和UTF-8区别:
简单来说,UNICODE,GBK和大五码就是编码的值,UTF-8(不定长)是Unicode的实现方式之一,它规定了字符如何在计算机中存储、传输等,UTF-8并不算是一种电脑编码,而是一种储存和传送的格式
Windows中的VC默认都是跟系统相同,比如简体Windows是GB2312或者GBK.繁体就是BIG5编码。而我们大多数中国人用VC编译出来的字符串常量也就是GBK编码的字符串
在VS2010中,默认是不支持使用#pragma execution_character_set("utf-8")来设置使用utf-8字符格式的,需要加上vs2010sp补丁之后才行,而2012也是没有支持,到了2013之后才开始默认支持。