只要看见“W”就是宽的意思,左边wchar_t,右边char

字符分类:
宽字符函数            普通C函数            描述
iswalnum()             isalnum()              测试字符是否为数字或字母
iswalpha()             isalpha()                测试字符是否是字母
iswcntrl()                iscntrl()                 测试字符是否是控制符
iswdigit()                isdigit()                 测试字符是否为数字
iswgraph()             isgraph()               测试字符是否是可见字符
iswlower()              islower()               测试字符是否是小写字符
iswprint()               isprint()                 测试字符是否是可打印字符
iswpunct()             ispunct()               测试字符是否是标点符号
iswspace()             isspace()              测试字符是否是空白符号
iswupper()             isupper()              测试字符是否是大写字符
iswxdigit()              isxdigit()              测试字符是否是十六进制的数字
wcslen()                 strlen()                  获取字符数组长度

大小写转换:
宽字符函数            普通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()             把宽字符的初始部分转换为无符号长整数

整型间转换扩充:
宽字符函数   普通C函数   描述
_itow_s()         itoa()         整型转宽字符串
_ltow_s()        ltoa()         长整型转宽字符串
_ultow_s()       ultoa()        无符号长整数同上

PS:最好别用“_itow”

多字节字符和宽字符转换及操作:
宽字符函数             描述
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()        putchar()       把宽字符转换成多字节字符并且写到标准输出
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().

摘:常用函数(包括:宽字符函数、普通C函数 )的更多相关文章

  1. volatile,可变参数,memset,内联函数,宽字符窄字符,国际化,条件编译,预处理命令,define中##和#的区别,文件缓冲,位域

    1.volatile: 要求参数修改每次都从内存中的读取.这种情况要比普通运行的变量需要的时间长. 当设置了成按照C99标准运行之后,使用volatile变量之后的程序运行的时间将比register的 ...

  2. C++ 宽字符(wchar_t)与窄字符(char)的转换

    了解 长度 宽字符wchar_t的长度16位,可以用来显示中文等除英文外的其他文字, 窄字符    char   的长度  8 位,只能处理英文. 哪里可以见到 在VS2010, 2012, 2013 ...

  3. [C/C++]宽字符与控制台程序

    转自:http://www.cnblogs.com/zplutor/archive/2010/11/27/1889227.html 在我刚开始学C/C++的时候,字符类型使用的都是char.接触Win ...

  4. C语言常用的库文件(头文件、函数库)

    C语言常用的库文件(头文件.函数库) C系统提供了丰富的系统文件,称为库文件.C的库文件分为两类,一类是扩展名为".h"的文件,称为头文件,在前面的包含命令中我们已多次使用过.在& ...

  5. PHP中有关Session的函数比较多,最常用到的也就这么几个函数

    php中的cookie与session技术详解 一.cookie介绍 cookie常用于识别用户.cookie是服务器留在用户计算机中的小文件.每当相同的计算机通过浏览器请求页面时,它同时会发送coo ...

  6. C++学习45 流成员函数put输出单个字符 cin输入流详解 get()函数读入一个字符

    在程序中一般用cout和插入运算符“<<”实现输出,cout流在内存中有相应的缓冲区.有时用户还有特殊的输出要求,例如只输出一个字符.ostream类除了提供上面介绍过的用于格式控制的成员 ...

  7. Python—字符编码转换、函数基本操作

    字符编码转换 函数 #声明文件编码,格式如下: #-*- coding:utf-8 -*- 注意此处只是声明了文件编码格式,python的默认编码还是unicode 字符编码转换: import sy ...

  8. python基础3之文件操作、字符编码解码、函数介绍

    内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: #/usr/bin/env ...

  9. (三)Linux Shell编程——Shell常用命令(输出、判断、循环、函数、包含)

    3. 常用命令 3.1 输出 3.1.1 echo命令 echo是Shell的一个内部指令,用于在屏幕上打印出指定的字符串.命令格式: echo arg name="coding" ...

随机推荐

  1. CentOS 6.9开启iptables的日志实现调试

    系统日志配置在CentOS 5上叫syslog,而在CentOS 6上叫rsyslog(增强版的syslog),CentOS 5上的配置文件在/etc/syslog.conf下,而CentOS 6在/ ...

  2. DLL Injection and Hooking

    DLL Injection and Hooking http://securityxploded.com/dll-injection-and-hooking.php Three Ways to Inj ...

  3. 严重: StandardServer.await: create[8005]:

    严重: StandardServer.await: create[8005]: 2011-03-14 17:44:51| 分类: 默认分类 | 标签:tomcat java 端口 await crea ...

  4. Visual Studio 2013在线文档地址备案

    Visual Studio 2013还没有离线的帮助文档,这里做个记录,以备后面使用. 地址:http://msdn.microsoft.com/zh-cn/library/dd831853.aspx

  5. Debian学习笔记

    14.1. 禁止非root用户登录系统 在/etc目录下新建一个nologin文本文件,内容随意.当系统发现该文件,就会禁止其它用户登录,并显示该文件内容. 14.2. 禁用CTRL+ALT+DEL组 ...

  6. JVM:如何分析线程堆栈

    英文原文:JVM: How to analyze Thread Dump 在这篇文章里我将教会你如何分析JVM的线程堆栈以及如何从堆栈信息中找出问题的根因.在我看来线程堆栈分析技术是Java EE产品 ...

  7. Java:准备学习的高级主题

    ClassLoader GC Concurrent Transaction JTA JPA JDBC JNDI JNI JNA JNative OSGI JMS JSTL EL Servlet NIO ...

  8. 20.custom自定义线程池

    自定义线程池 1.若Executors工厂类无法满足需求,可以自己使用工厂类创建线程池,底层都是使用了); ThreadPoolExecutor threadPoolExecutor = new Th ...

  9. split-array-largest-sum(参考了discuss)

    注意,第一种用法,涉及到一些Java的知识.就是采用Object作为HashMap的key的时候,需要重载这个Class的 equals 和 hashCode 这两个方法.其中equals需要判断一下 ...

  10. Shell学习:grep, sed, awk命令的练习题

    http://www.cnblogs.com/chengmo/archive/2013/01/17/2865479.html 文件:datafileSteve Blenheim:238-923-736 ...