Win32编程常见字符类型(摘自MSDN)

C和Win32的多线程编程(MSDN笔记整理) 线程之间需要共享公共资源,还要接收各自的堆栈。 1. 所有线程使用的公共资源必须同步,Win32 提供了几种同步资源的方式,包括信号、临界区、事件和互斥体。 互斥体(mutual exclusion 的缩写)是异步执行的线程或进程间通信的方式。此通信通常用于协调多个线程或进程的活动,通常通过锁定和取消锁定资源控制对共享资源的访问。假定有这样一个程序,一个线程更新静态数据结构,该结构包含要由 阅读详情
 

LPCSTR

  Pointer to a constant null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef __nullterminated CONST CHAR *LPCSTR;

指向以NULL结尾的const ansi字符串(每个字符为8位)

 

LPCWSTR

  Pointer to a constant null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CONST WCHAR *LPCWSTR;

指向以NULL结尾的const unicode字符串(每个字符为16位)

 

LPCTSTR

  An LPCWSTR if UNICODE is defined, an LPCSTR otherwise.

This type is declared in WinNT.h as follows:

#ifdef UNICODE

 typedef LPCWSTR LPCTSTR;

#else

 typedef LPCSTR LPCTSTR;

#endif

 可在LPCSTR和LPCWSTR两种数据类型间转换,取决于与预处理宏UNICODE的定义与否

 

LPSTR

  Pointer to a null-terminated string of 8-bit Windows (ANSI) characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef CHAR *LPSTR;

指向以NULL结尾的ansi字符串 (每个字符为8位)

 

LPWSTR

  Pointer to a null-terminated string of 16-bit Unicode characters. For more information, see Character Sets Used By Fonts.

This type is declared in WinNT.h as follows:

typedef WCHAR *LPWSTR;

 指向以NULL结尾的unicode字符串(每个字符为16位)

 

LPTSTR

  An LPWSTR if UNICODE is defined, an LPSTR otherwise.

This type is declared in WinNT.h as follows:

#ifdef UNICODE

 typedef LPWSTR LPTSTR;

#else

 typedef LPSTR LPTSTR;

#endif

 可在LPSTR和LPWSTR两种数据类型间转换,取决于与预处理宏UNICODE的定义与否

 

TCHAR

  A WCHAR if UNICODE is defined, a CHAR otherwise.

This type is declared in WinNT.h as follows:

#ifdef UNICODE

 typedef WCHAR TCHAR;

#else

 typedef char TCHAR;

#endif

 可在char和wchar之间转换,取决于与预处理宏UNICODE的定义与否

 

助记字母:

LP – long pointer (32位指针,win32编程指针都为LP)

C – constant

W – wide(UNICODE宽字符)

T – transferable (可转换的)

 

MSDN WIN32编程核心文档集合 Windows 32位应用程序接口(WIN32 API)是微软为其32位操作系统提供的底层编程接口,它是Windows操作系统的核心组件之一。从Windows 3.1时代开始,WIN32 API已经成为Windows应用程序开发不可或缺的一部分。随着时间的推移,WIN32 API已经发展成一个庞大且成熟的系统,涵盖了从基础系统服务到高级图形用户界面的广泛功能。在创建复杂的应用程序时,开发者需要创建包含多个控件和复杂布局的自定义对话框。通过自定义对话框,可以实现各种交互式功能,并为用户提供更丰富的体验。 阅读详情

相关推荐

精通Windows编程:MSDN资源全面指南

组件对象模型(Component Object Model,简称COM)是一种微软的软件组件架构,用于独立编程语言的对象之间的通信。COM为软件组件的定义、创建、使用提供了一套规范,其核心是二进制兼容接口和引用计数机制。COM的组成主要包括以下几个方面:接口(Interface):COM对象之间交互的规范定义,是一个或多个方法的集合。类工厂(Class Factory):用于创建COM对象的工厂,通常是实现IClassFactory接口的对象。

weixin_35751194的博客 809

Win32中的字符编码与字符类型

PS:阿婆主水平有限,以下言论可能有错,请dajian

adavid0821的专栏 695

两轮差速移动机器人运动分析、建模和控制

两轮差速运动分析及建模运动学分析三种运动状态分析函数模型仿真验证直线验证曲线验证旋转验证运动控制 运动学分析 运动特性为两轮差速驱动,其底部后方两个同构驱动轮的转动为其提供动力,前方的随动轮起支撑作用并不推动其运动,如图1两轮差速驱动示意图所示。 定义其左右驱动轮的中心分别为Wl和Wr,且对应线速度为Vl和Vr,该值可以通过电机驱动接口输出的角转速ωl,ωr2和驱动轮半径r求得,即: Vl=r⋅...

启小新的博客 8万+

Win32中的字符串(位,字符,字节,编码)

W版本和A版本的Win32API A:ANSI字符集;  W:wide Unicode字符集。windows支持Unicode和ANSI编码的字符。 在User32.dll中导出的函数实际上没有MessageBox,只有MessageBoxA和MessageBoxW,这两者是同一个API,实现了同样的功能。不同的是,MessageBoxA以多字节字符串作为参数输入,MessateBoxW以Un

超越 2825

特性阻抗 – SI/PI 世界碰撞的地方

除了谐振零点和峰值外,在一定频率下,传输线的阻抗看起来像远端开路时的电容器的阻抗,也看起来像远端短路时电感的阻抗。如果随后的制造变化将测得的阻抗推到 -10% 容差的低端(例如 44 欧姆)的测量区域内,那么如果在初始下降时测量,则真正的特性阻抗将在 42 欧姆时降低 5%,并且超出规格。这意味着,当我们测量红色或蓝色图的峰和相邻谷之间的中间阻抗时,它是该频率下传输线的特性阻抗。图 7 远端开路时(红色常亮)与远端短路时(蓝色常亮)的电感和电容抗阻抗与频率的关系(上图)和传输线的阻抗与频率(下图)的对比。

jkh920184196的博客 962

直流电机双闭环调速系统MATLAB仿真

Chopper-Fed DC Motor Drive This example shows a Chopper-Fed DC Motor Drive. Description The DC motor is fed by the DC source through a chopper which consists of GTO thyristor and free-wheeling diode ...

飞行动力的博客 2万+

C++字符串完全指引之一 —Win32 字符编码

C++字符串完全指引之一 —— Win32 字符编码原著:Michael Dunn翻译:Chengjie Sun原文出处:CodeProject:The Complete Guide to C++ Strings, Part I 引言  毫无疑问,我们都看到过像 TCHAR, std::string, BSTR 等各种各样的字符串类型,还有那些以 _t

Chenxinyi's Weblog 3894

YDOOK: ANSYS Maxwell 19 教程7:Maxwell 2D 材料管理 添加新增 永磁材料

使用ANSYS Maxwell 19 添加新增 永磁材料 1. 点击 Add material 按钮后,在左下方的下拉框中下拉选择永磁材料,弹出用材料设置框: 2. 按照下面数据输入 3. 输入 Hc 与 Br/Ap 两项后,其他项的数据将自动计算给出 4. 点击OK后再,为了使得材料属性的完整性,在 Bulk Conductivity 属性行中输入 材料电导率的数值。 ...

YDOOK 1万+

VC win32中的各种字符型和相互转换

在win32编程的时候, 各种字符串相关的宏往往搞的头昏眼花, 为了方便今后参考, 随笔记录一下 类型转换 1. string->LPCWSTR LPCWSTR是一个指向unicode编码字符串的32位指针,所指向字符串是wchar型,而不是char型。 LPCWSTR StringHelper::ToLPCWSTR(const string& str) { size_t

小轶的学习笔记 1779

ENVI 5.6保姆级教程:高分七号DLC影像从打开到融合的完整流程(附避坑指南)

本文详细介绍了ENVI 5.6处理高分七号DLC影像的完整流程,包括环境准备、数据解压、正射校正、图像融合等关键步骤。特别针对国产卫星数据处理的独特挑战,提供了实用的避坑指南和优化技巧,帮助用户高效完成光学影像的预处理和质量提升。

weixin_33269743的博客 382

TriCore架构-基于TC397的启动流程

TC397芯片的启动流程分为三个关键阶段:固件启动(BootFirmware)、Bootloader引导和应用程序启动。BootFirmware作为硬件信任根,包含SSW基础初始化、CHSW自检和BSL应急刷写通道。Bootloader承担安全验证和程序引导功能,支持双分区(AB-SWAP)和双引导方案(PBL/SBL)。安全启动通过校验机制确保软件完整性,提供三种可选技术方案。应用程序启动阶段实现软件双分区管理,支持SOTA更新。整个流程体现了汽车电子系统的安全设计理念,通过硬件级保护与软件验证相结合确保

xiandang8023的博客 987

Win32汇编学习——windows基础知识(小甲鱼教程)

《Win32汇编语言程序设计》(小甲鱼) 1)windows特权保护机制 1)80386的中断和异常 2)80386的保护机制 3)Windows的保护机制 2)80x86处理器的工作模式 1.实模式 2.保护模式 3.虚拟8086模式 3)Win7的启动过程 1.开启电源,加电自检(在主板上的一个BIOS芯片) 检查完之后(检查一些硬盘,磁盘、CPU...看能不能通...

team39的博客 2366

VEML7700环境光传感器原理图设计,已量产(光线传感器)

最近做便携显示设备的自动亮度调节模块,最终敲定了 VEML7700 这款数字光传感器 —— 一是它 0~120klx 的宽量程刚好覆盖 “暗室→户外强光” 的全场景,二是 Filtron™技术让它的光谱响应和人眼高度贴合,测出来的 “亮度” 更符合实际视觉感受,加上 O-Trim™技术把输出公差压到 10% 以内,省了不少后期校准的功夫。搭好电路后串口直接读 lx 数值,稳定性和精度都够,这篇聊聊这个模块的硬件设计细节。

不脱发的程序猿 603

WIN32 预定义宏WIN32,_WIN32,_WIN64介绍使用

1.WIN32宏 在 Win32 配置下,WIN32 在“项目属性-C/C++-预处理器-预处理器定义”里声明了,而在 x64 配置下,这个常量并不在项目预定义列表中。这是否说明可以根据 WIN32 来判断是否在 x64 平台呢?不。在 Windows SDK 的 minwindef.h 下第 37 行有如下定义: #ifndef WIN32 #define WIN32 #endif ...

kevin的博客 2万+

在Open3D中从网格中采样点云

在本文中,我们将学习如何使用Open3D从网格中采样点云。点云采样是点云处理的重要步骤之一,能够为后续的任务提供必要的输入。通过这些示例代码,我们可以很容易地使用Open3D库从网格模型中采样点云。值得注意的是,根据实际应用需求,我们可以调整采样点的数量和采样方法来满足不同的场景需求。除了使用Poisson Disk算法,Open3D还提供了其他的点云采样方法,如Uniform采样和Random采样。这个函数使用了Poisson Disk采样算法,可以在保持点云均匀性的同时,尽可能避免重叠点的生成。

FxRuby的博客 413

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Visual Studio 2022如何安装和使用MSDN

Visual Studio 2022如何安装和使用MSDN

荔园微风的博客 1万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Win32编程(Hello World)

先看MSDN中的例子: #include #include #include #include static TCHAR szWindowClass[] = _T("win32app"); static TCHAR szTitle[] = _T("Win32 Guided Tour Application"); HINSTANCE hInst; LRESULT CALL

kevin的专栏 868

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Win32串口编程

Win32串口编程金贝贝  一、基本知识    Win32下串口通信与16位串口通信有很大的区别。在Win32下,可以使用两种编程方式实现串口通信,其一是调用的Windows的API函数,其二是使用ActiveX控件。使用API 调用,可以清楚地掌握串口通信的机制,熟悉各种配置和自由灵活采用不同的流控进行串口通信。下面介绍串口操作的基本知识。   打开串口:使用CreateFile

宋雷的技术博客 3433

WIN32 SDK界面编程

WIN32 SDK界面编程   在介绍win32 sdk界面编程,先需要了解win32 编程。熟悉win32编程之后,就可以轻松进行win32 界面编程。 一、什么是win32 编程 Win32编程,指的是用Window提供的API(Application Programming Interface)为Window编写应用程序。 之所以称之为Win32,是因为现在的Window都是32位的

zeusuperman1的专栏 6803

WIN32串口编程

一、基本知识    Win32下串口通信与16位串口通信有很大的区别。在Win32下,可以使用两种编程方式实现串口通信,其一是调用的Windows的API函数,其二是使用ActiveX控件。使用API 调用,可以清楚地掌握串口通信的机制,熟悉各种配置和自由灵活采用不同的流控进行串口通信。下

冷剑魂的专栏——垃圾场 1734

Win32asm 初学者常见问答集

faqcnWin32asm 初学者常见问答集作者:Iczelion 中文版翻译:Neo1. 关于本问答集2. win32asm 是什么?3. 开始 win32asm 编程需要做些什么准备?4. 哪里可以获得关于 win32asm 编程的帮助? 关于本问答集这是一个 win32as

RadAsm的专栏 1567

vs2005的帮助文档msdn使用方法/如何更好的使用MSDN!

文章出处:http://hi.baidu.com/ldea/blog/item/a8eb6e544f043fc3b645ae66.html如何更好的使用MSDN!如果你做程序,就不能不用到文档,如果你在WIN32下面做程序的,就不能不用到MSDN了。MSDN是微软提供给广大程序员的开发大全,里面有很多值得我们利用的地方,有人问道怎么用,我这里介绍一下:首先我说明一下MSDN的结构,MSDN

xilidecai的专栏 5008

[转]如何更有效的利用MSDN

MSDN使用指引如果你做程序,就不能不用到文档,如果你在WIN32下面做程序的,就不能不用到MSDN了。MSDN是微软提供给广大程序员的开发大全,里面有很多值得我们利用的地方,有人问道怎么用,我这里介绍一下: 首先我说明一下MSDN的结构,MSDN一般是三张光盘(也有DVD的,内容更丰富),分季度发行(月份-年份的格式),在安装时最好全装(1。5G左右),这样可以免去换盘之苦。里面依次有如下内容(

记得忘记@博客 2637

预定义常量WIN32、_WIN32、_WIN64的作用

MSDN 里说,VC有3个预处理常量,分别是_WIN32,_WIN64,WIN32。这三个常量如何使用呢?看起来简单,其实是很困惑的。 WIN32 在 Win32 配置下,WIN32在“项目属性-C/C+±预处理器-预处理器定义”里声明了,而在 x64 配置下,这个常量并不在项目预定义列表中。这是否说明可以根据 WIN32 来判断是否在 x64 平台呢?不。在 Windows SDK的minwindef.h下第37行有如下定义: #ifndef WIN32 #define WIN32 #e.

technologyleader的专栏 3751

Windows Programming, MSDN, Win32 MsgBox

Windows Handles (窗口句柄) The Windows Operating system uses “handles” to refer to components of windows HANDLE: This is a Windows.h type and typedef void* HANDLE(address) It stores the handle of...

lcerte的博客 206
上一篇: 岗位要求潜台词,你看得懂么?
下一篇: Better Cygwin Terminal
glcdw
博客等级 码龄18年 8粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值