一、ASCII码
ASCII码是计算机在早期时代最重要的编码方式之一。它将所有常用的字符映射到0-127的数字,共包含了128个字符。其中从0到31是控制字符,32到127是打印字符。
ASCII码具有简单、紧凑、易于存储、传输等特点。在计算机通讯、系统管理、文本编辑等方面都得到了广泛应用。
// ASCII码的示例代码 #include <stdio.h> int main() { char ch = 'A'; printf("字符 %c 的ASCII码为 %d", ch, ch); return 0; }
二、Unicode编码
Unicode编码是一种全球通用的字符编码标准,是各种语言文字、符号和表情等基本字符集。它采用16位或32位的编码单元,可以表示范围更广的字符,包括几乎所有的现代语言的字符。
Unicode编码的优点是可以支持多语言,可以应用于各个领域,如操作系统、办公软件、网页设计等。
// Unicode编码的示例代码 #include <stdio.h> #include <wchar.h> int main() { wchar_t ch = L'中'; wprintf(L"字符 %lc 的Unicode编码为 %d", ch, ch); return 0; }
三、UTF-8编码
UTF-8编码是Unicode的一种变长编码方式,它使用1-4个字节存储Unicode码位,可以在各种计算机系统中使用,包含ASCII码的兼容性。在Web应用、电子邮件、数据库等方面,UTF-8是非常常用的编码方式。
UTF-8的优点是节省存储空间,处理方便,同时可以表示几乎所有Unicode字符。
// UTF-8编码的示例代码 #include <stdio.h> #include <wchar.h> #include <locale.h> int main() { setlocale(LC_ALL, "zh_CN.UTF-8"); // 设置本地环境为UTF-8 wchar_t ch = L'中'; printf("Unicode编码为 %d,UTF-8编码为:", ch); wprintf(L"%lc", ch); return 0; }
四、GB2312编码
GB2312编码是一种中文字符编码标准,包括6,763个简体汉字和682个其它字符。它使用两个字节表示一个汉字,每个字节最高位都为0。
GB2312编码主要应用于中文信息处理系统、电子出版物、计算机设计、各种办公自动化系统及数据库管理系统等方面。
// GB2312编码的示例代码 #include <stdio.h> int main() { char str[] = "中华人民共和国"; printf("GB2312编码为:"); for (int i = 0; i < sizeof(str); i++) printf("%02X ", str[i]); return 0; }
五、Base64编码
Base64编码是一种基于64个可打印字符(包括字母、数字和符号)来表示二进制数据的编码方式。这种编码方式是由网络应用场景提出来的,比如电子邮件中传输二进制数据。它将二进制数据转换为纯文本,方便传输。
Base64编码的优点是可移植性强、处理方便、适合传输较短的二进制数据。
// Base64编码的示例代码 #include <stdio.h> #include <string.h> #include <base64.h> int main() { char data[] = "hello world"; char encoded[100]; memset(encoded, 0, sizeof(encoded)); base64_encode(data, strlen(data), encoded, sizeof(encoded)); printf("Base64编码为:%s", encoded); return 0; }
原创文章,作者:VWWWS,如若转载,请注明出处:https://www.506064.com/n/332713.html