宽字符集(unicode)操作函数 (转)
字符分类:
| 宽字符函数 | 普通C函数 | 描述 |
|---|---|---|
| iswalnum() | isalnum() | 测试字符是否为数字或字母 |
| iswalpha() | isalpha() | 测试字符是否是字母 |
| iswcntrl() | iscntrl() | 测试字符是否是控制符 |
| iswdigit() | isdigit() | 测试字符是否为数字 |
| iswgraph() | isgraph() | 测试字符是否是可见字符 |
| iswlower() | islower() | 测试字符是否是小写字符 |
| iswprint() | isprint() | 测试字符是否是可打印字符 |
| iswpunct() | ispunct() | 测试字符是否是标点符号 |
| iswspace() | isspace() | 测试字符是否是空白符号 |
| iswupper() | isupper() | 测试字符是否是大写字符 |
| iswxdigit() | isxdigit() | 测试字符是否是十六进制的数字 |
大小写转换:
| 宽字符函数 | 普通C函数 | 描述 |
|---|---|---|
| towlower() | tolower() | 把字符转换为小写 |
| towupper() | toupper() | 把字符转换为大写 |
字符比较:
| 宽字符函数 | 普通C函数 | 描述 |
|---|---|---|
| wcscoll() | strcoll() | 比较字符串 |
日期和时间转换:
| 宽字符函数 | 描述 |
|---|---|
| strftime() | 根据指定的字符串格式和locale设置格式化日期和时间 |
| wcsftime() | 根据指定的字符串格式和locale设置格式化日期和时间, 并返回宽字符串 |
| strptime() | 根据指定格式把字符串转换为时间值, 是strftime的反过程 |
打印和扫描字符串:
| 宽字符函数 | 描述 |
|---|---|
| fprintf()/fwprintf() | 使用vararg参量的格式化输出 |
| fscanf()/fwscanf() | 格式化读入 |
| printf() | 使用vararg参量的格式化输出到标准输出 |
| scanf() | 从标准输入的格式化读入 |
| sprintf()/swprintf() | 根据vararg参量表格式化成字符串 |
| sscanf() | 以字符串作格式化读入 |
| vfprintf()/vfwprintf() | 使用stdarg参量表格式化输出到文件 |
| vprintf() | 使用stdarg参量表格式化输出到标准输出 |
| vsprintf()/vswprintf() | 格式化stdarg参量表并写到字符串 |
数字转换:
| 宽字符函数 | 普通C函数 | 描述 |
|---|---|---|
| wcstod() | strtod() | 把宽字符的初始部分转换为双精度浮点数 |
| wcstol() | strtol() | 把宽字符的初始部分转换为长整数 |
| wcstoul() | strtoul() | 把宽字符的初始部分转换为无符号长整数 |
多字节字符和宽字符转换及操作:
| 宽字符函数 | 描述 |
|---|---|
| mblen() | 根据locale的设置确定字符的字节数 |
| mbstowcs() | 把多字节字符串转换为宽字符串 |
| mbtowc()/btowc() | 把多字节字符转换为宽字符 |
| wcstombs() | 把宽字符串转换为多字节字符串 |
| wctomb()/wctob() | 把宽字符转换为多字节字符 |
输入和输出:
| 宽字符函数 | 普通C函数 | 描述 |
|---|---|---|
| fgetwc() | fgetc() | 从流中读入一个字符并转换为宽字符 |
| fgetws() | fgets() | 从流中读入一个字符串并转换为宽字符串 |
| fputwc() | fputc() | 把宽字符转换为多字节字符并且输出到标准输出 |
| fputws() | fputs() | 把宽字符串转换为多字节字符并且输出到标准输出串 |
| getwc() | getc() | 从标准输入中读取字符, 并且转换为宽字符 |
| getwchar() | getchar() | 从标准输入中读取字符, 并且转换为宽字符 |
| None | gets() | 使用fgetws() |
| putwc() | putc() | 把宽字符转换成多字节字符并且写到标准输出 |
| putwchar() | getchar() | 把宽字符转换成多字节字符并且写到标准输出 |
| None | puts() | 使用fputws() |
| ungetwc() | ungetc() | 把一个宽字符放回到输入流中 |
字符串操作:
| 宽字符函数 | 普通C函数 | 描述 |
|---|---|---|
| wcscat() | strcat() | 把一个字符串接到另一个字符串的尾部 |
| wcsncat() | strncat() | 类似于wcscat(), 而且指定粘接字符串的粘接长度. |
| wcschr() | strchr() | 查找子字符串的第一个位置 |
| wcsrchr() | strrchr() | 从尾部开始查找子字符串出现的第一个位置 |
| wcspbrk() | strpbrk() | 从一字符字符串中查找另一字符串中任何一个字符第一次出现的位置 |
| wcswcs()/wcsstr() | strchr() | 在一字符串中查找另一字符串第一次出现的位置 |
| wcscspn() | strcspn() | 返回不包含第二个字符串的的初始数目 |
| wcsspn() | strspn() | 返回包含第二个字符串的初始数目 |
| wcscpy() | strcpy() | 拷贝字符串 |
| wcsncpy() | strncpy() | 类似于wcscpy(), 同时指定拷贝的数目 |
| wcscmp() | strcmp() | 比较两个宽字符串 |
| wcsncmp() | strncmp() | 类似于wcscmp(), 还要指定比较字符字符串的数目 |
| wcslen() | strlen() | 获得宽字符串的数目 |
| wcstok() | strtok() | 根据标示符把宽字符串分解成一系列字符串 |
| wcswidth() | None | 获得宽字符串的宽度 |
| wcwidth() | None | 获得宽字符的宽度 |
另外还有对应于memory操作的 wmemcpy(), wmemchr(), wmemcmp(), wmemmove(), wmemset().
宽字符集(unicode)操作函数 (转)的更多相关文章
- C语言:宽字符集操作函数(unicode编码)
C语言:宽字符集操作函数(unicode编码) 字符分类: 宽字符函数 普通C函数描述 iswalnum() isalnum() 测试字符是否为数字或字母 iswalpha() isalpha() 测 ...
- C语言:宽字符集操作函数
C语言:宽字符集操作函数 (unicode编码) 字符分类: 宽字符函数普通C函数描述 iswalnum() isalnum() 测试字符是否为数字或字母 iswalpha() isalpha() 测 ...
- windows 编程—— 宽字符集 与 Unicode
目录: 从ASCII码 到 Unicode Windows 编程中的 "字符” 定义 (如何在windows下进行通用编码) 常用的通用函数,定义 (本文为学习<Programming ...
- 宽字符(UNICODE)字符集
推荐使用宽字符(UNICODE)字符集,严格使用宽字符集的函数和定义.具体参考https://blog.csdn.net/qq_22642239/article/details/84822485
- dedecms功能性函数封装(XSS过滤、编码、浏览器XSS hack、字符操作函数)
dedecms虽然有诸多漏洞,但不可否认确实是一个很不错的内容管理系统(cms),其他也不乏很多功能实用性的函数,以下就部分列举,持续更新,不作过多说明.使用时需部分修改,你懂的 1.XSS过滤. f ...
- C语言对文件的操作函数用法详解1
在ANSIC中,对文件的操作分为两种方式,即: 流式文件操作 I/O文件操作 一.流式文件操作 这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下: typedef str ...
- [转]C++字符串操作函数_tcschr、_tcsrchr
原文出处:https://blog.csdn.net/eickandy/article/details/50083169 C++标准库函数提供了字符和字符串的操作函数,并提供了其UNICODE版本,本 ...
- 跟着ALEX 学python day3集合 文件操作 函数和函数式编程 内置函数
声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/ 一. 集合 集合是一个无序的,不重复的数据组合,主要作用如下 1.去重 把一个列表变成集合 ,就自动去重 ...
- 字符串操作函数<string.h>相关函数strcpy,strcat,等源码。
首先说一下源码到底在哪里找. 我们在文件中包含<cstring>时,如果点击右键打开文档, 会打开cstring,我们会发现路径为: D:\Program Files\visual stu ...
- Postgresql 字符串操作函数
样例测试: update property set memorial_no = btrim(memorial_no, ' ') where memorial_no like ' %' 或:update ...
随机推荐
- 激光雷达ldlidar communication is abnormal.
查看串口设置是否正常,可以通过cat /dev/ttyS4查看是否有数据以确定所接的串口是否正确
- Springboot多数据源使用示例
1.配置文件 spring.datasource.url=jdbc:mysql://198.168.1.1:3306/user?useUnicode=true&characterEncodin ...
- Esp8266 Arduino PubSubClient连接阿里云老是返回rc=2错误的解决方案
最近在用Esp8266 Arduino连接阿里云IOT的时候,服务器端老是返回rc=2 的错误! 用了MQTTfx模拟连接阿里云IOT没有问题,但是把同样的ClientID,UserName和Pass ...
- Flink RocksDB参数调优说明
参数名 说明 state.backend.rocksdb.block.blocksize block 的大小,默认值为4KB.在生产环境中总是会适当调大一些,一般32KB比较合适,对于机械硬盘可以再增 ...
- 【jquery easyUI 拓展
jquery-easyui本身没有提供列锁定/解锁的接口,并且其原有的列隐藏/显示在符合表头的情况下会出现错位,我在项目中遇到了这两个问题,在参考了网上许多解决方案后,编写了一个拓展插件,基本上解决了 ...
- vue+vant-ui移动端适配 宽高
一:在vue中安装vant 1.npm i vant -S 2.npm i babel-plugin-import -D // 在.babelrc 中添加配置 { "plugins" ...
- JBOSS环境与应用部署
- 可收集ALC问题[A non-collectible assembly may not reference a collectible assembly.]
ITask程序集在共享类库中定义,初衷是任务调度程序,创建新的可卸载ALC以供每一个任务运行,此时会出现两个问题: 任务调度程序加载了任务程序后,任务程序中的ITask类型和任务调度程序中的ITask ...
- clickhouse-数据副本踩坑
数据副本--失败,看日志 vim /var/log/clickhouse-server/clickhouse-server.err.log select * from system.replicati ...
- Android Studio相关配置说明
介绍:Android Sdutio 是谷歌推出的一个 Android 集成开发工具. 现已将 SDK(software development kit)集成到 Android Studio 中.可以直 ...