ANSI - unicode 関数対応表

Unicode与ANSI字符串之间的转换 本文主要介绍Unicode与ANSI字符串之间的转换的关键代码 立即下载

Unicode プログラミングを行う上で、 ANSI 版で作成、通常利用していた関数名を変えなければならない場合が多々ありますね。 ちょっと、わかる範囲で対応表を作ってみました。 (と言っても、tchar.h みれば、殆どわかるんですけどね・・・あ、まちがっていたら、ゴメンなさい)


ANSI 版


unicode 版


共用仕様(tchar 版)


備考

Program
mainwmain_tmainメイン関数
WinMainwWinMain_tWinMainWindows メイン関数(ですが、WinMain のままでも unicode 版にして動きます - というか、普通、WinMain から変えないけどなぁ・・・)
environ / _environ_wenviron_tenviron 
__argv__wargv__targv 
Formatted i/o
printfwprintf_tprintf 
fprintffwprintf_ftprintfテキストファイルに出力するとき、フォーマット指定しながら書けるので、かなり便利でした。ちゃんと戻り値でエラーとれるって知ってた?
sprintfswprintf_stprintf / wsprintfwsprintf を使いましょう。なんとなくだけど。
vprintfvwprintf_vtprintf 
vfprintfvfwprintf_vftprintf 
vsprintfvswprintf_vstprintf 
_vsnprintf_vsnwprintf_vsntprintf 
scanfwscanf_tscanf 
fscanffwscanf_ftscanf 
sscanfswscanf_stscanf 
Unformatted i/o
fgetcfgetwc_fgettc 
_fgetchar_fgetwchar_fgettchar 
fgetsfgetws_fgetts標準入出力(主にファイル)から1行ロードしてくれる。便利な関数ですよね。
fputcfputwc_fputtc 
_fputchar_fputwchar_fputtchar 
fputsfputws_fputts 
getcgetwc_gettc 
getchargetwchar_gettchar 
gets_getws_getts 
putcputwc_puttc 
putcharputwchar_puttchar 
puts_putws_putts 
ungetcungetwc_ungettc 
String conversion functions
strtodwcstod_tcstod 
strtolwcstol_tcstol 
strtoulwcstoul_tcstoul 
_itoa_itow_itot 
_ltoa_ltow_ltot 
_ultoa_ultow_ultot 
atoi_wtoi_ttoi 
atol_wtol_ttol 
_atoi64_wtoi64_ttoi64 
_i64toa_i64tow_i64tot 
_ui64toa_ui64tow_ui64tot 
String functions
strcatwcscat_tcscat 
strchr / _mbschrwcschr_tcschr文字列を検索して文字を見つけます。あんまり使わない(というか、同じ処理をする関数を自分で作ることの方が多いかな)
strcpywcscpy_tcscpy 
strcspn / _mbscspnwcscspn_tcscspn文字列から文字を探索。文字を複数指定できる(文字列で指定)
strlenwcslen_tcslen 
strncat / _mbsnbcatwcsncat_tcsncat 
strncpy / _mbsnbcpywcsncpy_tcsncpy 
strpbrk / _mbspbrkwcspbrk_tcspbrk 
strrchr / _mbsrchrwcsrchr_tcsrchr 
strspn / _mbsspnwcsspn_tcsspn 
strstr / _mbsstrwcsstr_tcsstr 
strtok / _mbstokwcstok_tcstok 
_strdup_wcsdup_tcsdup 
_strnset / _mbsnbset_wcsnset_tcsnset 
_strrev / _mbsrev_wcsrev_tcsrev 
_strset / _mbsset_wcsset_tcsset 
strcmp / _mbscmpwcscmp_tcscmp 
_stricmp / _mbsicmp_wcsicmp_tcsicmp 
strncmp / _mbsncmpwcsncmp_tcsnccmp 
strncmp / _mbsnbcmpwcsncmp_tcsncmp 
_strnicmp / _mbsnicmp_wcsnicmp_tcsncicmp 
_strnicmp / _mbsnbicmp_wcsnicmp_tcsnicmp 
strcoll / _mbscollwcscoll_tcscoll 
_stricoll / _mbsicoll_wcsicoll_tcsicoll 
_strncoll / _mbsncoll_wcsncoll_tcsnccoll 
_strncoll / _mbsnbcoll_wcsncoll_tcsncoll 
_strnicoll / _mbsnicoll_wcsnicoll_tcsncicoll 
_strnicoll / _mbsnbicoll_wcsnicoll_tcsnicoll 
Execute functions
_execl_wexecl_texecl 
_execle_wexecle_texecle 
_execlp_wexeclp_texeclp 
_execlpe_wexeclpe_texeclpe 
_execv_wexecv_texecv 
_execve_wexecve_texecve 
_execvp_wexecvp_texecvp 
_execvpe_wexecvpe_texecvpe 
_spawnl_wspawnl_tspawnl 
_spawnle_wspawnle_tspawnle 
_spawnlp_wspawnlp_tspawnlp 
_spawnlpe_wspawnlpe_tspawnlpe 
_spawnv_wspawnv_tspawnv 
_spawnve_wspawnve_tspawnve 
_spawnvp_wspawnvp_tspawnvp 
_spawnvpe_wspawnvpe_tspawnvpe 
system_wsystem_tsystem 
Time functions
asctime_wasctime_tasctime 
ctime_wctime_tctime 
_strdate_wstrdate_tstrdate 
_strtime_wstrtime_tstrtime 
_utime_wutime_tutime 
strftimewcsftime_tcsftime 
Directory functions
_chdir_wchdir_tchdir 
_getcwd_wgetcwd_tgetcwd 
_getdcwd_wgetdcwd_tgetdcwd 
_mkdir_wmkdir_tmkdir 
_rmdir_wrmdir_trmdir 
Environment/Path functions
_fullpath_wfullpath_tfullpath 
getenv_wgetenv_tgetenv 
_makepath_wmakepath_tmakepath 
_putenv_wputenv_tputenv 
_searchenv_wsearchenv_tsearchenv 
_splitpath_wsplitpath_tsplitpath 
Stdio functions
fdopen / _fdopen_wfdopen_tfdopen 
_fsopen_wfsopen_tfsopen 
fopen_wfopen_tfopen 
freopen_wfreopen_tfreopen 
perror_wperror_tperror 
_popen_wpopen_tpopen 
_tempnam_wtempnam_ttempnam 
tmpnam_wtmpnam_ttmpnam 
Io functions
access / _access_waccess_taccess 
_chmod_wchmod_tchmod 
_creat_wcreat_tcreat 
_findfirst_wfindfirst_tfindfirst 
_findfirsti64_wfindfirsti64_tfindfirsti64 
_findnext_wfindnext_tfindnext 
_findnexti64_wfindnexti64_tfindnexti64 
_mktemp_wmktemp_tmktemp 
open / _open_wopen_topen 
remove_wremove_tremove 
rename_wrename_trename 
_sopen_wsopen_tsopen 
_unlink_wunlink_tunlink 
_finddata_t_wfinddata_t_tfinddata_t 
_finddatai64_t_wfinddatai64_t_tfinddatai64_t 
Stat functions
_stat_wstat_tstat 
_stati64_wstati64_tstati64 
Setlocale functions
setlocale_wsetlocale_tsetlocale 
Redundant "logical-character" mappings
_strdec / _mbsdec_wcsdec_tcsdec 
_strinc / _mbsinc_wcsinc_tcsinc 
_strncnt / _mbsnbcnt_wcsncnt_tcsnbcnt 
_strncnt / _mbsnccnt_wcsncnt_tcsnccnt 
_strnextc / _mbsnextc_wcsnextc_tcsnextc 
_strninc / _mbsninc_wcsninc_tcsninc 
_strspnp / _mbsspnp_wcsspnp_tcsspnp 
_strlwr / _mbslwr_wcslwr_tcslwr 
_strupr / _mbsupr_wcsupr_tcsupr 
strxfrmwcsxfrm_tcsxfrm 
ctype functions
isalnum / _ismbcalnumiswalnum_istalnum 
isalpha / _ismbcalphaiswalpha_istalpha 
isasciiiswascii_istascii 
iscntrliswcntrl_istcntrl 
isdigit / _ismbcdigitiswdigit_istdigit 
isgraph / _ismbcgraphiswgraph_istgraph 
islower / _ismbcloweriswlower_istlower 
isprint / _ismbcprintiswprint_istprint 
ispunct / _ismbcpunctiswpunct_istpunct 
isspace / _ismbcspaceiswspace_istspace 
isupper / _ismbcupperiswupper_istupper 
isxdigitiswxdigit_istxdigit 
toupper / _mbctouppertowupper_totupper 
tolower / _mbctolowertowlower_totlower 
_ismbclegal(1)_istlegal 
_ismbblead(0)_istlead 
isleadbyte(0)_istleadbyte 

 

 

http://www7.plala.or.jp/bunpan/htmldata/program/sdk/fol_003/sdk00311.html

Delphi解决 openssl DLL 与 Indy 的SSL/TLS 连接问题 ​ 使用 SSL 连接时出错。错误 1409442E:SSL 例程:ssl3_read_bytes:tlsv1 警报协议版本 由于我使用的是最新版本的Indy,根据Delphi Praxis 上的此线程,这种情况不应该发生。事实证明,不知何故,一个非常旧版本的 openssl DLLlibeay32.dll和ssleay32.dll已被放置在我计算机上的 sarch 路径中(版本 1.0.0e)。 阅读详情

相关推荐

光伏系统选型指南:5种主流MPPT算法优缺点对比(附选型流程图)

本文深入剖析了光伏系统中五种主流MPPT算法的核心原理与性能差异。通过对比扰动观察法、电导增量法、恒定电压法、模糊逻辑控制及人工智能算法在追踪精度、响应速度、实现成本与稳定性等方面的表现,为不同应用场景(如户用、工商业及大型电站)提供了清晰的选型决策流程图和实战指南,帮助工程师优化系统效率与投资回报。

weixin_29294597的博客 106

[收集]ANSI字符与Unicode字符的互相转换

字符的问题真是令人头痛。。 ANSI字符是单字节的,Unicode字符是双字节的,VC6.0默认是用ANSI字符的,而后来的7、8默认都是用Unicode字符。。导致字符的问题经常遇到,最好又不要强制类型转换(有时候结果不正确不说,这种转换会导致很多漏洞。。)。这次真是被逼急了,就上网找了点资料总结一下。。 单字节字符或者字符串比如说有char*、string、LPCSTR(实际上就是char

华秋实的专栏 2917

【图形学】Loop细分算法及半边结构实现(C++)

文章目录Loop 细分算法介绍增加新顶点更新旧顶点算法实现半边结构半边结构的表示方法半边结构的构造方法创建所有顶点创建所有面及半边半边结构的使用 Loop 细分 顾名思义,网格细分是将粗糙网格精细化的过程,如下动图。Loop细分是众多网格细分算法的一种,Loop细分仅仅对三角形网格模型有效。值得注意的是,虽然叫Loop细分,但是不能理解为“循环”细分,叫这个名字是因为作者的名字是这个而已。 下面是一个粗糙的兔子模型1000个面,进行3次细分 算法介绍 Loop细分算法主要分两步进行 增加新顶点:增加

wk_119的博客 8066

ANSI和UNICODE编码区别

国标局最后拍板:一个字节不够,那我们就用多个字节来为汉字编码吧,但是,国情那么穷,字节那么贵,三个字节伤不起,那就用俩字节吧,先给常用的几千汉字编个码,等以后国家强盛了人民富裕了,咱再扩展呗---于是GB2312就产生了。最后,微软苦逼了:顾客就是上帝啊,你们的编码我都得满足啊,这样吧,卖给美国国内的系统默认就用ASCII编码吧,卖给中国人的系统默认就用GBK编码吧,卖给韩国人的系统默认就用EUC-KR编码,...但是为了避免你们误会我卖给你们的系统功能有差异,我就统一把你们的默认编码都显示成ANSI吧。

Android系统攻城狮 3320

YOLOv5 改进点总览:轻量化、高精度的背后有哪些魔改?

YOLOv5是由Ultralytics团队开发的高效目标检测模型,其核心改进包括:主干网络采用CSPDarknet53提升梯度传播效率;特征融合使用PANet增强小目标识别;输出结构采用解耦头设计优化定位和分类任务。此外,YOLOv5通过CIoU损失函数、Mosaic数据增强和SimOTA标签分配机制进一步提升性能。模型支持多种推理格式(ONNX/TensorRT等),并具备自动锚框匹配和多尺度训练功能,使其在轻量化(yolov5s仅7MB)与高性能(最高51.2% mAP)间取得平衡,但缺乏正式论文支撑是

guoguozgw的博客 1805

Arnold Denoise流程

参考:https://support.solidangle.com/display/ARP/Removing+Noise+Workflow Arnold生来不是一个以单帧渲染速度见长的渲染器,但这并不能作为一个简单场景渲染时间长达几个小时的借口。 个人认为高品质生产级渲染结果中,Unbiased renderer在渲染时最耗计算时间的其实就是降噪,以至于降噪专门成了一门灯光师必备的技术

机器猫的CG空间 5084

Ansi字符串转换为Unicode字符串的四种方法

Ansi字符串转换为Unicode字符串的四种方法

shakesky的专栏 4054

Stable Diffusion跑图总爆显存?别急着换显卡,试试这个PYTORCH_CUDA_ALLOC_CONF参数调优

本文深入解析了Stable Diffusion运行中常见的显存不足问题,特别是由显存碎片化导致的假性OOM现象。通过详细讲解PYTORCH_CUDA_ALLOC_CONF参数中的max_split_size_mb设置技巧,提供了一套完整的显存优化方案,帮助用户在无需升级硬件的情况下显著提升AI绘画的稳定性与效率。

weixin_42524100的博客 346

ANSI字符集和Unicode字符集

在计算机中字符通常并不是保存为图像,每个字符都是使用一个编码来表示的,而每个字符究竟使用哪个编码代表,要取决于使用哪个字符集(charset)。   在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个

Hello World 2825

【面试经验】大疆笔试-计算机视觉算法B卷

3、a=np.random.randn(3,3) b=np.random.randn(3,1) ,那么c=a*b的维度应该是:*是元素乘法或者torch.mul,@才是矩阵乘法或者torch.matmul,不会触发广播机制;8、将分辨率降低一半时,精标定内参(fx、fy、cx、cy、k1、k2、k3)焦距、光心、畸变系数将分别变成(fx、fy、cx/2、cy/2、k1、k2、k3),只能搜到光心变成一半,畸变系数不变。12、KLT算法在频闪光源、重复纹理、高速机动、环境照度低的情况下效果显著下降。

litterfinger的博客 1444

RK3588平台开发系列讲解(以太网篇)MDIO底层驱动

沉淀、分享、成长,让自己和他人都能有所收获!😄。

内核笔记 6884

ASCII,GBK,Unicode(UTF-32/UTF-8),乱码,ANSI详解

ASCII,GBK,Unicode,UTF-8,UTF-32,乱码,ANSI

鲤籽鲲的博客 1198

配置 SAP Web Dispatcher 的实战指南:打通 SAP Fiori、SAP Gateway 与前端系统的关键一跳

SAP Web Dispatcher 在 Fiori 架构中扮演关键角色,作为统一入口处理 HTTPS 请求、实现安全代理和流量分发。它将分散在不同系统的访问路径统一收口,解决浏览器同源策略限制,集中管理 HTTPS 终止和客户端信息传递。典型配置中,Web Dispatcher 监听 443 端口,根据路径将 OData 请求转发至 Gateway 系统,静态资源请求送至前端服务器。SSL 相关配置(如 PSE 文件)确保安全通信,而路由规则(wdisp/system_xx)决定请求转发目标。实施时需注意

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 101

UNICODE字符串和ANSI字符的转换

windows把字符串分成两类,UNICODE字符串和基于code page的ANSI字符串。UNICDOE字符串使用UTF-16LE编码方式(占2字节,其值与UNICODE编码真值一致,暂不考虑位于BMP之外的情况)。ANSI字符串使用多字节编码方式,以简体中文GBK为例(code page 936),ASCII码使用1字节,中文使用2字节,使用leadbyte来区分两者。     在C/C+

tsdcsp2002的专栏 3156

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

wofstreamでUnicode文字列をファイルに出力する。

何も設定せず、直接に漢字とかを出力できません。<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->wofs...

zjumty 294

VB摄像头监控

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

UNICODE和ANSI字符串的转换

继上集故事《多字符集(ANSI)和UNICODE及字符串处理方式准则 》,我们现在有一些特殊需求: 有时候我们的字符串是多字符型,我们却需要使用宽字符型;有的时候却恰恰相反。 Windows为我们提供了这样的函数来处理这个问题: 1.MultiByteToWideChar 函数功能:该函数映射一个字符串到一个宽字符 (unicode)的字符串。由该函数映射的字符串没必要是多字节字符组。 函数原型:int MultiByteToWideChar(UINT CodePage,

blpluto的专栏 4255

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

《windows核心编程系列》二谈谈ANSI和Unicode字符集

2012、8、28 http://blog.youkuaiyun.com/ithzhang/article/details/7916732转载请注明出处!! 第二章:字符和字符串处理 使用vc编程时项目--》属性--》常规栏下我们可以设置项目字符集合,它可以是ANSI(多字节)字符集,也可以是unicode字符集。一般情况下说Unicode都是指UTF-16。也就是说每个字符编码为两个字节。655...

系统运维 257

改行コードの変換(CRLF→LF,Windows→UNIX)

改行コードの変換(CRLF→LF,Windows→UNIX) Linux 改行コード意外と困るのでメモしておく。 改行コード Unix \n Windows \r\n Macintosh \r hexdumpを利用する hexdumpコマンドによりファイルの内容を16進ダンプすると 以下のように改行コードが表示され

山丘望月的狼 2330

Ansi、Unicode、UTF8字符串之间的转换和写入文本文件

转载请注明出处http://www.cppblog.com/greatws/archive/2008/08/31/60546.html 最近有人问我关于这个的问题,就此写一篇blog Ansi字符串我们最熟悉,英文占一个字节,汉字2个字节,以一个\0结尾,常用于txt文本文件 Unicode字符串,每个字符(汉字、英文字母)都占2个字节,以2个连续的\0结尾,NT操作系统内核用的是这

机器视觉之家 1万+

Visual Studio TCHAR 对应的函数映射关系

The generic-text routine mappings are defined in TCHAR.H. _tccpy and _tclen map to functions in the MBCS model; they are mapped to macros or inline functions in the SBCS and Unicode models for compl

learnboy007的专栏 880

windows下Unicode与ANSI的相互转换

对于windows下的wchar, tchar以及其转换函数, 比较烦人! 不过没有办法, 骂完了还是得总结总结, 把学习到的东西写下来, 以备后用.      字符编码的知识可以从维基里获得,UTF-16也就是Unicode,到ANSI也就是通常的一字节英文字符,在转换的时候的标志是CP_ACP : CodePageAnsiCodePage     1  简单的不包括中文的widechar字

行者无疆的专栏 2162

ANSI和UNICODE字符串处理常用函数

ANSI和UNICODE字符串处理函数 在windows中ANSI和UNICODE字符串操作分别提供了相应的函数,也提供了一套兼容两者的函数。比如: #ifdef  UNICODE       #define _tcscpy     wcscpy  #else      #define _tcscpy     strcpy  #endif 字符串处理函数常用函数对照 ANSI UNIC...

深之JohnChen的专栏 5532

Unicode中跟汉字相关的一些内容的总结陈词

UniHan 这几天琢磨着怎么方便的给汉字注音,因为要知道具体哪些Unicode是给汉字用的,就读了读Unicode的官方文档.目前unicode已经发展到了7.0.不看不知道,发现Unicode的定义中颇有些有趣的内容,写下了给大家分享下,也算是个笔记. Unicode中跟汉字相关统称为UniHan,官方文档在http://www.unicode.org/rep...

weixin_33813128的博客 277

Ansi 与 Unicode编码格式(2)

一、不同编码格式下的字符串处理及相互转换 1. Ansi char、char * 、const char * CHAR、(PCHAR、PSTR、LPSTR)、LPCSTR 2. Unicode wchar_t、wchar_t * 、const wchar_t * WCHAR、(PWCHAR、PWSTR、LPWSTR)、LPCWSTR 3. T 通用类型 TCHAR、(TCHAR * 、PTCHAR、PTSTR、LPTSTR)、LPCTSTR P代表指针的意思,STR代表字符串的意思,L是长指针的意思,

qq_43630810的博客 699

文本的编码转换ANSI、UNICODE、UTF8

ANSI和UNICODE和UTF8的互相转换 Charset.h #pragma once #include <tchar.h> #include <stringapiset.h> #include <stdlib.h> #include <string> class Charset { public: static std::wstring...

3650
上一篇: 外汇的发展历史
下一篇: 深入剖析WTL—WTL框架窗口分析
ShenRui
博客等级 码龄20年 63粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值