Windows核心编程:第2章 字符和字符串处理

Github

https://github.com/gongluck/Windows-Core-Program.git

//第2章 字符和字符串处理.cpp: 定义应用程序的入口点。
//

#include "stdafx.h"
#include "第2章 字符和字符串处理.h"

#include "StrSafe.h"

int APIENTRY wWinMain(_In_ HINSTANCE hInstance,
    _In_opt_ HINSTANCE hPrevInstance,
    _In_ LPWSTR    lpCmdLine,
    _In_ int       nCmdShow)
{
    TCHAR str[] = TEXT("第2章 字符和字符串处理");
    size_t len = _tcslen(str);

    TCHAR str2[5] = { 0 };
    //errno_t eno = _tcscpy_s(str2, _countof(str2), str);//缓冲区过小程序会终止

    PTCHAR pend = nullptr;//字符串结尾指针
    size_t left = 0;//目标缓冲区剩余(加上字符串结尾,所以>=1)
    //截断拷贝
    HRESULT hres = StringCchCatEx(str2, _countof(str2), str, &pend, &left, STRSAFE_FILL_BEHIND_NULL);

    //字符串(码位)比较
    //0-调用失败,
    //CSTR_LESS_THAN            1           // string 1 less than string 2
    //CSTR_EQUAL                2           // string 1 equal to string 2
    //CSTR_GREATER_THAN         3           // string 1 greater than string 2
    int ires = CompareStringOrdinal(str, _countof(str), str2, _countof(str2), FALSE);

    //字符串转换
    //https://github.com/gongluck/Tools/tree/master/TransCode
    char ansic[] = "第2章 字符和字符串处理";
    int ilen = MultiByteToWideChar(CP_ACP, 0, ansic, -1, NULL, 0);
    wchar_t* unicode = new wchar_t[ilen];
    MultiByteToWideChar(CP_ACP, 0, ansic, -1, unicode, ilen);//我觉得书中对最后一个参数的解释错了,应该是“字符数”。
    delete[] unicode;

    system("pause");
    return 0;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Jerry的SAP技术分享

Java和ABAP中的几种引用类型的分析和比较

Java编程语言中几种不同的引用类型是面试时经常容易被问到的问题:强引用,软引用,弱引用,虚引用。

713
来自专栏魂祭心

原 荐 NEO VM原理及其实现

3838
来自专栏君赏技术博客

Object-C中的黑魔法

在Swift中存在Option类型,也就是使用?和!声明的变量。但是OC里面没有这个特征,因为在XCODE6.3之后出现新的关键词定义用于OC转SWIFT时候可...

1021
来自专栏游戏杂谈

使用InjectProxy、InjectMediator简化Fabrication开发

加上Fabrication自身支持的元标签,可简化一些代码,但简化后也付出了一定的代码,那就是变量需要声明为public,而之前虽然繁琐,但却可以将其声明为pr...

973
来自专栏JackieZheng

Hadoop阅读笔记(六)——洞悉Hadoop序列化机制Writable

  酒,是个好东西,前提要适量。今天参加了公司的年会,主题就是吃、喝、吹,除了那些天生话唠外,大部分人需要加点酒来作催化剂,让一个平时沉默寡言的码农也能成为一个...

1945
来自专栏个人分享

Hive metastore源码阅读(二)

  最近随着项目的深入,发现hive meta有些弊端,就是你会发现它的元数据操作与操作物理集群的代码耦合在一起,非常不利于扩展。比如:在create_tabl...

913
来自专栏更流畅、简洁的软件开发方式

我的数据访问类(第二版)—— for .net2.0 (二)

下面写一下相对来说不变的地方 SQL语句部分,改成了静态函数的形式。 using System; using System.Collections.Generi...

1448
来自专栏一个会写诗的程序员的博客

禅与 JavaScript 编程艺术, Zen and The Art of JavaScript Programming禅与 JavaScript 编程艺术

Zen and The Art of JavaScript Programming

541
来自专栏博岩Java大讲堂

Java虚拟机--线程上下文类加载器

1694
来自专栏菩提树下的杨过

深度解析 TypeConverter & TypeConverterAttribute (一)

前言     我们在开发复杂控件的时候不可避免的碰到类型转换TypeConverter,微软给我们提供了很多转换类如ArrayConverter,BaseNu...

1886

扫码关注云+社区