MFC:字符串处理

例子

	//多字节char* szTest = "abc多字节";int nLen = strlen(szTest);//9//宽字节wchar_t* szTest2  = L"abc多字节";int nlen2 = wcslen(szTest2);//6//测试项目配置为Unicodewchar_t* szTesz3 = TEXT("abcd");//char* -> CStringCString strTest(szTest);//CString->char* CStringA strTmp;strTmp = strTest;char* szTest4 = strTmp.GetBuffer();

TEXT

根据项目属性自动配置

宽字节

加上L

CString 转换

CString str;
str.Format(TEXT("nChar=%d nRepCnt=%d,nFlags=%d"),nChar,nRepCnt,nFlags);

CString 获取char*

//char* -> CStringCString strTest(szTest);//CString->char* CStringA strTmp;strTmp = strTest;char* szTest4 = strTmp.GetBuffer();

UNICODE

两个字节表示一个字符,比如‘A’在ASCII下是一个字符,在UNICODE下是两个,高字符用0填充,汉字在ASCII下是两个字节,在UNICODE下仍旧是2个字节
UNICODE的用处就是表示世界上各种文字

MBCS 多字符集

他是不定长表示世界文字的编码

项目配置

如果是多字符集,则LPSTR就是char*
如果是UNICODE,则对应的是LPWSTR就是unsiged short*

LPSTR ,LPCSTR,LPTSTR,LPCTSTR

LPSTR :32位指针,指向一个字符串,每个字符占用一个字节
LPCSTR:32-bit指针,指向一个常字符串

LPTSTR :32位指针 指向一个字符串 每个字符串可能占用1字节或者2字节,取决于UNICODE是否定义
LPCTSTR:32位指针 指向一个常字符串 每个字符串可能占用1字节或者2字节,取决于UNICODE是否定义

LPTSTR 可以和 CString 互转

LPTSTR  szTest5=szTest2;CString strsss = szTest5;

例子

//根据项目配置Unicodewchar_t* szTesz3 = TEXT("abcd");LPTSTR  szTest5=szTesz3;
LPCTSTR szTest6=TEXT("qaz");LPSTR szTest7="123";

宏_T

当配UNICODE时候 _T就是L
没有的时候就是ANSI

	LPTSTR szTest8=new TCHAR[32];TCHAR* szTest8 = _T("HELLO");

T理解(TCHAR,LPTSTR,LPCTSTR,_T(),_TEXT()._tcsxx()…) 表示一种中间类型,即不表示多字节还是UNICODE,编译时候才决定

_tcs函数

_tcslen
_tcscpy
_tcscat
_tcscmp

例子

    LPTSTR  szTest5=szTest2;LPCTSTR szTest6=TEXT("qaz");LPSTR szTest7="123";LPTSTR szTest8=new TCHAR[32];TCHAR* szTest9 = _T("HELLO多字节");_tcscpy(szTest8,szTest9);int nLen3 = _tcslen(szTest9);CString str12;str12.Format(TEXT("nLen3=%d %d %s"),nLen3,_tcscmp(szTest8,szTest9),szTest8);MessageBox(str12);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/11639.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kubernetes——调试小技巧

目录 前言 一、K8s调试技术的重要性 二、7个具体的K8s调试技巧 前言 Kubernetes(K8s)调试技术是指在使用Kubernetes集群过程中,用于定位和解决问题的方法和技术。Kubernetes是一个复杂的系统,它负责管理容器化的应用程序&…

力扣HOT100 - 763. 划分字母区间

解题思路&#xff1a; class Solution {public List<Integer> partitionLabels(String s) {int[] last new int[26];int len s.length();for (int i 0; i < len; i) {last[s.charAt(i) - a] i;//记录字母最远的下标}List<Integer> partition new ArrayList…

SketchUp Pro for Mac v2024 24.0.484 草图大师中文版

SketchUp Pro 2024 for Mac是一款功能强大的三维建模软件&#xff0c;适用于Mac电脑。其简洁易用的界面和强大的工具集使得用户可以轻松创建复杂的3D模型。 SketchUp Pro 2024 for Mac支持导入和导出多种文件格式&#xff0c;如dwG、DXF、3DS、OBJ、DEM等&#xff0c;方便用户…

(一)Spring教程——Spring框架简介

Spring框架是Java平台的一个开源的全栈应用程序框架&#xff0c;一般被称作Spring。Spring框架的核心特性是依赖注入(DI)与面向切面的编程(AOP)&#xff0c;Spring可以看成是一个控制反转的容器。 Spring框架由20多个模块组成。这些模块可以分成几个大的层次&#xff1a;核心容…

java spring boot动态数据库获得配置信息连接多数据源(数据库)

数据库 数据库文件和代码文件 https://download.csdn.net/download/qq_34631220/89304173 链接&#xff1a;https://pan.baidu.com/s/1xoh6xiSRx4nW_gKvR1QPjg 提取码&#xff1a;i7b7 –来自百度网盘超级会员V5的分享 文章位置 添加链接描述 说明&#xff1a;事务只能单库…

学习软考----数据库系统工程师32

NoSQL非关系型数据库 CAP理论和BASE特性 关系型数据库主要使用ACID理论 各种NoSQL数据 库的分类与特点

中国海洋大学整体来说值得报考吗?中国海洋大学考情分析。

中国海洋大学&#xff08;Ocean University of China&#xff09;&#xff0c;简称中国海大。位于中国青岛&#xff0c;是中华人民共和国教育部直属的综合性重点大学&#xff0c;国家“双一流”、“985工程”和“211工程”重点建设高校之一&#xff0c;入选“2011计划”、“111…

RT-Thread事件集

文章目录 前言一、RT-Thread事件集的概念二、事件集函数的使用1.创建事件集函数2.事件集发送函数3.事件集接收函数4.事件集删除函数 三、事件集使用例程总结 前言 本篇文章将给大家讲解RT-Thread中事件集的概念&#xff0c;了解什么是事件集及事件集的函数使用方法。 一、RT-…

Lesson5--二叉树(超详细版)

【本节目标】 1. 树概念及结构 2. 二叉树概念及结构 3. 二叉树顺序结构及实现 4. 二叉树链式结构及实现 1.树概念及结构 1.1树的概念 树是一种 非线性&#xff08;线性结构就是顺序表链表&#xff09; 的数据结构&#xff0c;它是由 n &#xff08; n>0 &#xff09;个…

Linux 第三十章

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C&#xff0c;linux &#x1f525;座右铭&#xff1a;“不要等到什么都没有了…

ms17-010(永恒之蓝)

1.漏洞介绍: 永恒之蓝&#xff08;ms17-010&#xff09;爆发于2017年4月14日晚&#xff0c;是一种利用Windows系统的SMB协议漏洞来获取系统的最高权限&#xff0c;以此来控制被入侵的计算机。甚至于2017年5月12日&#xff0c; 不法分子通过改造“永恒之蓝”制作了wannacry勒索病…

this.$refs 调用子组件的方法注意需要在子组件被创建之后

在Vue 2中&#xff0c;使用this.$refs来访问子组件通常需要满足以下几个条件&#xff1a; 子组件需要有一个唯一的ref属性。例如&#xff0c;<child-component ref"child" />。 父组件需要在适当的时机&#xff08;例如在mounted钩子函数中&#xff09;访问th…

国际护士节庆祝活动向媒体投稿有方法很轻松

作为一名医院职工,我肩负着医院对外信息宣传的重任。在国际护士节这个特殊的日子里,我们医院举办了一系列庆祝活动,以表彰护士们的辛勤付出和无私奉献。然而,在将这些活动信息投稿至媒体的过程中,我最初却遭遇了诸多挑战。 起初,我采用传统的邮箱投稿方式,将精心撰写的稿件发送…

RabbitMq出现Not management user问题解决

在RabbitMq登录的时候突然弹出如下图&#xff1a; 提示“当前用户不是管理员用户”进入mq控制命令台下&#xff1a; windows版本在mq安装路径下的sbin下进入cmd弹出框&#xff1b; Linux版本没有测试&#xff1b; 输入以下命令&#xff1a; rabbitmqctl list_users 查询当…

栈与队列OJ题【括号适配问题】【用队列实现栈】【用栈实现队列】【设计循环队列】

一.有效的括号 ​​​OJ链接 这一道题我们就可以用栈来解决&#xff1a; 不了解栈的可以看我的上一篇博客。 typedef char STDataType; //用数组来实现栈 typedef struct stack {STDataType* a;int capacity;int top; }ST; void STInit(ST* pst) {assert(pst);pst->a NU…

内网环境安装使用DBeaver使用第一天

之前一直使用navicat&#xff0c;现在出于某种原因不让使用了&#xff0c;于是上手了这个工具&#xff0c;说实话&#xff0c;真的&#xff0c;但是必须要用。 首先安装的时候&#xff0c;必须要选择MySQL驱动&#xff0c;如果外网直接选择以后就可以下载了&#xff0c;内网需…

字符串函数(一):strcpy(拷贝),strcat(追加),strcmp(比较),及strncpy,strncat,strncmp

字符串函数 一.strcpy&#xff08;字符串拷贝&#xff09;1.函数使用2.模拟实现 二.strcat&#xff08;字符串追加&#xff09;1.函数使用2.模拟实现 三.strcmp&#xff08;字符串比较&#xff09;1.函数使用2.模拟实现 四.strncpy1.函数使用2.模拟实现 五.strncat1.函数使用2.…

采油厂职工向媒体投稿的好方法找到了

作为一名采油厂的职工,我深知在媒体上定期投稿的重要性。这不仅是我们展示工作成果、传播企业文化的重要途径,更是上级考核我们工作表现的一项指标。然而,在投稿的过程中,我经历了不少心酸与困扰。 起初,我采用传统的邮箱投稿方式。每天,我都会花费大量时间在网络上搜索合适的媒…

Linux----正则表达式练习题题解

1、 显示/etc/rc.d/rc.sysinit文件中以不区分大小的h开头的行&#xff1b; [rootopenEuler ~]# grep -E "^(H|h)" /etc/passwd halt:x:7:0:halt:/sbin:/sbin/halt 注&#xff1a;当然也可以使用grep -i来实现&#xff0c;这里我换了一个文件&#xff08;/etc/passw…

基于SPWM控制策略的二极管钳位型的五电平逆变器simulink仿真

本人搭建了二极管钳位型五电平逆变器simulink仿真模型&#xff0c;SPWM采用层叠&#xff0c;输出线电压9电平&#xff0c;相电 压5电平&#xff0c;滤波后对称三相电压、电流&#xff0c;THD<5%&#xff0c;效果十分优越&#xff0c;适合新手学习使用。 模型获取链接&…