📄 unicode2ansi.cpp
字号:
// Unicode2Ansi.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <windows.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <memory.h>
//////////////////////////////////////////////////////////////
// 函数名: U2a
//
// 参数: wszCov-需要转换的内容(Unicode码)。
// szCoved-输出,接收转换后ANSI码。
//
// 功能: 把Unicode码转换成Ascii码。
//
// 返回值: 0 成功,-1 失败。
//
// 作者:
//
// 建立日期:
//////////////////////////////////////////////////////////////
int U2a(char * wszCov,char * szCoved)
{
int nAlen = 0;
int nUlen = 0;
int nLen;
nUlen = wcslen((unsigned short *)wszCov);
nAlen = WideCharToMultiByte(936, WC_COMPOSITECHECK,
(LPWSTR)wszCov, nUlen, NULL, 0, NULL, NULL);
nLen = WideCharToMultiByte(936, WC_COMPOSITECHECK,
(const unsigned short *)wszCov, nUlen, szCoved,
nAlen, NULL, NULL);
szCoved[nLen] = 0;
if(!nLen)
return -1;
else
return 0;
}
int main(int argc, char* argv[])
{
char szRet[1024];
char szIn[512];
int nRet,nTemp,nTempRet;
WCHAR wszIn[512];
memset(szRet,0,1024);
memset(szIn,0,512);
nRet = strlen((char *)wszIn);
memset(wszIn,0,nRet);
wcscpy(wszIn,L"HelloWorld");
nRet = U2a((char *)wszIn,szRet);
if(nRet != 0)
{
printf("%s\n","U2A is fail");
return 1;
}
else
{
nTemp = strlen(szRet);
for(int i = 1;i <= nTemp;i++)
{
nTempRet = szRet[i - 1];
printf("%x ",nTempRet);
if((i % 16) == 0)
printf("\n");
}
printf("\n");
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -