深圳建设网站个人,wordpress+无插件主题,广州有哪些网站建设,宜昌市建设工程质量监督站网站目录
一._wcsupr_s 函数简介二._wcsupr_s 函数实战三.注意问题三.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 C 语言基础入门 零基础 C/C 学习路线推荐 : C/C 学习目录 C 面向对象 零基础 C/C 学习路线推荐 : C/C 学习目录 C 设计模式 零基…目录
一._wcsupr_s 函数简介二._wcsupr_s 函数实战三.注意问题三.猜你喜欢 零基础 C/C 学习路线推荐 : C/C 学习目录 C 语言基础入门 零基础 C/C 学习路线推荐 : C/C 学习目录 C 面向对象 零基础 C/C 学习路线推荐 : C/C 学习目录 C 设计模式 零基础 C/C 学习路线推荐 : C/C 学习目录 C STL 零基础 C/C 学习路线推荐 : C/C 学习目录 C/C 技术杂谈 零基础 C/C 学习路线推荐 : C/C 学习目录 C/C 常用函数 一._wcsupr_s 函数简介
在 C / C 中字符串分为多字节字符串和宽字节字串(也称 unicode 字符串)具体区别请参考《unicode 和多字节区别》
C 语言中 _strupr_s 函数可用于将多字节字符串中的小写转大写而 _wcsupr_s 函数则用于将 unicode 宽字节字符串中的小写转大写需要包含头文件 string.h _wcsupr_s 函数语法如下
/*
*描述此类函数是用于将unicode字符串中的小写转大写
*
*参数
* [in/out] _Str将该字符串中的大写字符转换为小写
* [in] _Size拼接后的字符串大小并非目标字符串大小也并非原始字符串大小
*
*返回值errno_t是微软新定义的一种类型这种类型是一种整型代表错误代码具体参考MSDN介绍,
* 若果是0 则代表没有错误如果是其他的值 则会抛出一个值
*///头文件string.herrno_t _wcsupr_s(char * _Str, size_t _Size);二._wcsupr_s 函数实战
/******************************************************************************************/
//Author:猿说编程
//Blog(个人博客地址): www.codersrc.com
//File:C/C _wcsupr_s 函数 – unicode 字符串小写转大写
//Time:2021/08/25 08:00
//Motto:不积跬步无以至千里不积小流无以成江海程序人生的精彩需要坚持不懈地积累
/******************************************************************************************/#include stdafx.h
#includestdlib.h
#includestdio.h
#includestring.h
#include windows.h
#include Locale.h //setlocale 设置输出文字的语言区域否则输出wchar字符包含中文乱码void main()
{WCHAR dst[1024] { Lwww.SHUOPYTHON.com };//使用wprintf输出中文需要设置输出文字的语言区域否则乱码setlocale(LC_ALL, chs); //chs 表示中文 ,需要包含头文件 Locale.hwprintf(L_wcsupr_s之前 dst:%s\n, dst);_wcsupr_s(dst, wcslen(dst) 1);wprintf(L_wcsupr_s之后 dst:%s\n, dst);system(pause);
}
/*
输出结果
_wcsupr_s之前 dst:www.SHUOPYTHON.com
_wcsupr_s之后 dst:WWW.SHUOPYTHON.COM
请按任意键继续. . .
*/三.注意问题
1. _wcsupr_s 第二个参数需要包含\0否则崩溃
_wcsupr_s(dst, strlen(dst)); //崩溃2.控制台输出 WCHAR / wchar_t ( unicode 字符串)只能使用 wprintf 并非 printf ;
输出多字节字符串使用printf函数
输出宽字节字符串使用wprintf 函数3.如果使用 setlocale输出的unicode字符串中含有中文必须通过setlocale 函数设置语言为中文否则乱码;
char* p1 C/C教程-猿说编程; //普通字符串 - 多字节字符串
wchar_t* p2 LC/C教程-猿说编程; //unicode字符串 - 字符串有修饰符 Lprintf(p1 :%s \n, p1);
wprintf(Lp2 :%s \n, p2);
/*
输出
p1 :C/C教程-猿说编程
p2 :C/C??-????
请按任意键继续. . .
*/解决办法参考上面例子设置语言格式即可
setlocale(LC_ALL, chs); //chs 表示中文 ,需要包含头文件 Locale.h三.猜你喜欢
C 语言 数组下标越界和内存溢出区别C 语言 使用指针遍历数组C 语言 指针和数组区别C 语言 指针数组和数组指针区别C 语言 野指针C 语言 函数值传递和址传递C 语言 函数不定长参数C 语言 函数指针C 语言 指针函数C 语言 回调函数 callbackC 语言 #pragma onceC 语言 #include 与 #include “” 区别C 语言 const 修饰函数参数C 语言 const 和 define 区别C 语言 #运算符C 语言 ##运算符C 语言 __VA_ARGS__C 语言 ##__VA_ARGS__C 语言 函数不定长参数 ##__VA_ARGS__经典案例C 语言 va_start / va_end / va_arg 自定义 printf 函数C 语言 main 函数C 语言 main 函数参数 main(int argc, char *argv[])C 语言 局部变量C 语言 全局变量C 语言 全局变量和局部变量区别C 语言 staticC 语言 externC/C Unicode 和多字节区别C/C wprintf 输出中文乱码C/C char 和 wchar_t 相互转换
未经允许不得转载猿说编程 » C/C _wcsupr_s 函数 – unicode 字符串小写转大写