C语言 宽字符串
- /* 宽字符串的打印 */
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- #include <wchar.h>
- #include <locale.h> /* 宽字符转换 */
- void show(void)
- {
- const wchar_t * pw = L"今天天气还不错啊!";
- /*
- 设计说明:
- 如果打印中文字符,setlocale()是必须的
- */
- setlocale(LC_ALL, "zh_CN.UTF-8");
- /*
- 知识补充:
- printf和wprintf不能混用,即一个程序中使用了printf, 就不使用wprintf,反之也是,既然printf输出char 和 wchar_t字符都可以,所以统一使用printf是最佳选择。
- */
- //printf打印宽字符串
- printf("--printf--[%ls]------\n", pw);
- printf("--printf--[%S]------\n", pw);
- ////wprintf打印宽字符串
- //wprintf(L"--wprintf--[%ls]------\n", pw);
- //wprintf(L"--wprintf--[%S]------\n", pw);
- }
- int main()
- {
- show();
- return ;
- }
宽字符函数 | 普通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() | 获取字符数组长度 |
towlower() | tolower() | 把字符转换为小写 |
towupper() | toupper() | 把字符转换为大写 |
wcscoll() | strcoll() | 比较字符串 |
wcsftime() | strftime() | 根据指定的字符串格式和locale设置格式化日期和时间 |
fwprintf() | fprintf() | 使用vararg参量的格式化输出 |
fwscanf() | fscanf() | 格式化读入 |
swprintf() | sprintf() | 根据vararg参量表格式化成字符串 |
vfwprintf() | vfprintf() | 使用stdarg参量表格式化输出到文件 |
vswprintf() | vsprintf() | 格式化stdarg参量表并写到字符串 |
wcstod() | strtod() | 把宽字符的初始部分转换为双精度浮点数 |
wcstol() | strtol() | 把宽字符的初始部分转换为长整数 |
wcstoul() | strtoul() | 把宽字符的初始部分转换为无符号长整数 |
_itow_s() | itoa() | 整型转宽字符串 |
_ltow_s() | ltoa() | 长整型转宽字符串 |
_ultow_s() | ultoa() | 无符号长整数转字符串 |
fgetwc() | fgetc() | 从流中读入一个字符并转换为宽字符 |
fgetws() | fgets() | 从流中读入一个字符串并转换为宽字符串 |
fputwc() | fputc() | 把宽字符转换为多字节字符并且输出到标准输出 |
fputws() | fputs() | 把宽字符串转换为多字节字符并且输出到标准输出串 |
getwc() | getc() | 从标准输入中读取字符, 并且转换为宽字符 |
getwchar() | getchar() | 从标准输入中读取字符, 并且转换为宽字符 |
putwc() | putc() | 把宽字符转换成多字节字符并且写到标准输出 |
putwchar() | putchar() | 把宽字符转换成多字节字符并且写到标准输出 |
ungetwc() | ungetc() | 把一个宽字符放回到输入流中 |
wcscat() | strcat() | 把一个字符串接到另一个字符串的尾部 |
wcsncat() | strncat() | 类似于wcscat(), 而且指定粘接字符串的粘接长度. |
wcschr() | strchr() | 查找子字符的第一个位置 |
wcsrchr() | strrchr() | 从尾部开始查找子字符出现的第一个位置 |
wcspbrk() | strpbrk() | 从一字符字符串中查找另一字符串中任何一个字符第一次出现的位置 |
wcscspn() | strcspn() | 返回不包含第二个字符串的的初始数目 |
wcsspn() | strspn() | 返回包含第二个字符串的初始数目 |
wcscpy() | strcpy() | 拷贝字符串 |
wcsncpy( | strncpy() | 类似于wcscpy(), 同时指定拷贝的数目 |
wcscmp() | strcmp() | 比较两个宽字符串 |
wcsncmp() | strncmp() | 类似于wcscmp(), 还要指定比较字符字符串的数目 |
wcslen() | strlen() | 获得宽字符串的数目 |
wcstok() | strtok() | 根据标示符把宽字符串分解成一系列字符串 |
wmemcpy() | memory() | 内存拷贝函数 |
wmemset() | memset() | 内存赋值函数 |
C语言 宽字符串的更多相关文章
- 宽字符与Unicode (c语言 汉语字符串长度)
在C语言中,我们使用char来定义字符,占用一个字节,最多只能表示128个字符,也就是ASCII码中的字符.计算机起源于美国,char 可以表示所有的英文字符,在以英语为母语的国家完全没有问题. 但是 ...
- C语言:宽字符集操作函数(unicode编码)
C语言:宽字符集操作函数(unicode编码) 字符分类: 宽字符函数 普通C函数描述 iswalnum() isalnum() 测试字符是否为数字或字母 iswalpha() isalpha() 测 ...
- C语言:宽字符集操作函数
C语言:宽字符集操作函数 (unicode编码) 字符分类: 宽字符函数普通C函数描述 iswalnum() isalnum() 测试字符是否为数字或字母 iswalpha() isalpha() 测 ...
- R语言拆分字符串
R语言拆分字符串 aaa<-"aa;bb;cc"ccc<-strsplit(aaa,split=";") bbb<- unlist(strsp ...
- C语言之字符串处理函数
C语言中字符串处理函数介绍 下面介绍8种基本的常用的字符串处理函数,在数值数组中也常常用到(部分函数).所有的C语言编译系统中一般都提供这些函数. 1.puts函数——输出字符串的函数 一般的形式为p ...
- Swift3.0语言教程字符串与URL的数据转换与自由转换
Swift3.0语言教程字符串与URL的数据转换与自由转换 Swift3.0语言教程字符串与URL的数据转换 Swift3.0语言教程字符串与URL的数据转换与自由转换,字符串中的字符永久保存除了可以 ...
- Swift3.0语言教程字符串与文件的数据转换
Swift3.0语言教程字符串与文件的数据转换 Swift3.0语言教程字符串与文件的数据转换,如果想要对字符串中的字符进行永久保存,可以将字符串中的字符写入到文件中.当然,开发者也可以将写入的内容进 ...
- Swift3.0语言教程字符串转换为数字值
Swift3.0语言教程字符串转换为数字值 Swift3.0语言教程字符串转换为数字值,在NSString中,开发者可以将字符串转换为数字值,通过这些数字值可以实现一些功能,如加法运算.减法运算等.数 ...
- Swift3.0语言教程字符串大小写转化
Swift3.0语言教程字符串大小写转化 Swift3.0语言教程字符串大小写转化,在字符串中,字符串的格式是很重要的,例如首字母大写,全部大写以及全部小写等.当字符串中字符很多时,通过人为一个一个的 ...
随机推荐
- idea中新增package总是嵌套的解决方法
在idea中创建package,为了方便会将com.xx.xx作为一个package,下面添加对应的子package.比如service,config等.但是当我创建是总是会嵌套在下面变成了com.x ...
- 数据库开发-Django ORM的数据库迁移
数据库开发-Django ORM的数据库迁移 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一. Django 项目准备 1>.安装django包 pip install d ...
- [AI] 论文笔记 - U-Net 简单而又接近本质的分割网络
越简单越接近本质. 参考资料 U-Net: Convolutional Networks for Biomedical Image Segmentation Abstract & Introd ...
- Java调用Kotlin事项及Kotlin反射初步
继续来研究Java调用Kotlin的一些东东. @Throws注解: 我们知道在Kotlin中是不存在checked exception的,而在Java中是存在的,那..如果从Java来调用Kotli ...
- CentOS7.5环境下搭建禅道
在安装配置禅道之前,可以百度了解一下两款项目管理工具禅道与JIRA的区别. 一.安装 进入禅道官网https://www.zentao.net,选择适用的版本进行安装,我这里下载的是“开源版11.6” ...
- 走,去出海,一起“Copy to World” | 36氪出海行业报告
http://www.sohu.com/a/200845344_114778 从工具类产品在海外聚集大量流量到新闻.社交游戏等内容类产品在海外取得优异成绩,中国正在完成从Copy to China向C ...
- springboot 打成的jar包在ClassLoader().getResource方法读取文件为null
1.属性文件如下: 10001=错误 2.文件读取主要代码 // getResource方式 URL resourceURI = getClass().getClassLoader().getReso ...
- Spring boot jpa 设定MySQL数据库的自增ID主键值
内容简介 本文主要介绍在使用jpa向数据库添加数据时,如果表中主键为自增ID,对应实体类的设定方法. 实现步骤 只需要在自增主键上添加@GeneratedValue注解就可以实现自增,如下图: 关键代 ...
- 1129. Shortest Path with Alternating Colors
原题链接在这里:https://leetcode.com/problems/shortest-path-with-alternating-colors/ 题目: Consider a directed ...
- SpringCloud组件Eureka
什么是微服务架构 架构设计概念,各服务间隔离(分布式也是隔离),自治(分布式依赖整体组合)其它特性(单一职责,边界,异步通信,独立部署)是分布式概念的跟严格执行SOA到微服务架构的演进过程作用:各服务 ...