⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unicode2ansi.cpp

📁 手机开发环境BREW实例
💻 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 + -