亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? base64.cpp

?? 關于vc++學習應用的很好的書籍!!!!!!!!!! 里面有事例,源碼!
?? CPP
字號:
// Base64.cpp: implementation of the CBase64 class.
// Author: Wes Clyburn (clyburnw@enmu.edu)
// 
// This code was practically stolen from:
// Dr. Dobb's Journal, September 1995, 
// "Mime and Internet Mail", by Tim Kientzle
//////////////////////////////////////////////////////////////////////

#include "../stdafx.h"
#include "Base64.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

// Static Member Initializers
//

// The 7-bit alphabet used to encode binary information
CString CBase64::m_sBase64Alphabet = 
_T( "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" );

int CBase64::m_nMask[] = { 0, 1, 3, 7, 15, 31, 63, 127, 255 };

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CBase64::CBase64()
{
}

CBase64::~CBase64()
{
}
//編碼函數
CString CBase64::Encode(LPCTSTR szEncoding, int nSize)
{
	CString sOutput = _T( "" );
	int nNumBits = 6;
	UINT nDigit;
	int lp = 0;
	
	ASSERT( szEncoding != NULL );
	if( szEncoding == NULL )
		return sOutput;
	m_szInput = szEncoding;
	m_nInputSize = nSize;
	
	m_nBitsRemaining = 0;
	nDigit = read_bits( nNumBits, &nNumBits, lp );
	while( nNumBits > 0 )
	{
		//獲取映射后的編碼字符
		sOutput += m_sBase64Alphabet[ (int)nDigit ];
		nDigit = read_bits( nNumBits, &nNumBits, lp );
	}
	//如果長度不是4的倍數
	//需要用=補足
	while( sOutput.GetLength() % 4 != 0 )
	{
		sOutput += '=';
	}
	return sOutput;
}

// The size of the output buffer must not be less than
// 3/4 the size of the input buffer. For simplicity,
// make them the same size.
int CBase64::Decode(LPCTSTR szDecoding, LPTSTR szOutput)
{
	CString sInput;
    int c, lp =0;
	int nDigit;
    int nDecode[ 256 ];
	
	ASSERT( szDecoding != NULL );
	ASSERT( szOutput != NULL );
	if( szOutput == NULL )
		return 0;
	if( szDecoding == NULL )
		return 0;
	sInput = szDecoding;
	if( sInput.GetLength() == 0 )
		return 0;
	//創(chuàng)建解碼表
	for( int i = 0; i < 256; i++ ) 
		nDecode[i] = -2; // Illegal digit
	for( i=0; i < 64; i++ )
	{
		nDecode[ m_sBase64Alphabet[ i ] ] = i;
		//忽略第8位
		nDecode[ m_sBase64Alphabet[ i ] | 0x80 ] = i; 
		//忽略附加的'='
		nDecode[ '=' ] = -1; 
		nDecode[ '=' | 0x80 ] = -1; 
    }
	//初始化輸出緩沖區(qū)
	memset( szOutput, 0, sInput.GetLength() + 1 );
	//循環(huán)將編碼的字符串轉換為原來的6bits數據
	for( lp = 0, i = 0; lp < sInput.GetLength(); lp++ )
	{
		c = sInput[ lp ];
		nDigit = nDecode[ c & 0x7F ];
		if( nDigit < -1 ) 
		{
			return 0;
		} 
		else if( nDigit >= 0 ) 
			write_bits( nDigit & 0x3F, 6, szOutput, i );
    }	
	return i;
}



//nNumBits:打算讀取的字節(jié)數
//pBitsRead:已經讀取得字節(jié)數
//lp總共讀取的字節(jié)數
UINT CBase64::read_bits(int nNumBits, int * pBitsRead, int& lp)
{
    ULONG lScratch;
    while( ( m_nBitsRemaining < nNumBits ) && 
		( lp < m_nInputSize ) ) 
	{
		//從輸入的字符串中獲取一個
		//8bits數據
		int c = m_szInput[ lp++ ];
		//右移8位
        m_lBitStorage <<= 8;
		//記錄獲取的數據
        m_lBitStorage |= (c & 0xff);
		m_nBitsRemaining += 8;
    }
	//根據讀取得字節(jié)數
	//取出不同的6位數據,通過掩碼進行映射
    if( m_nBitsRemaining < nNumBits ) 
	{
		lScratch = m_lBitStorage << ( nNumBits - m_nBitsRemaining );
		*pBitsRead = m_nBitsRemaining;
		m_nBitsRemaining = 0;
    } 
	else 
	{
		lScratch = m_lBitStorage >> ( m_nBitsRemaining - nNumBits );
		*pBitsRead = nNumBits;
		m_nBitsRemaining -= nNumBits;
    }
    return (UINT)lScratch & m_nMask[nNumBits];
}


void CBase64::write_bits(UINT nBits,
						 int nNumBits,
						 LPTSTR szOutput,
						 int& i)
{
	UINT nScratch;
	
	m_lBitStorage = (m_lBitStorage << nNumBits) | nBits;
	m_nBitsRemaining += nNumBits;
	while( m_nBitsRemaining > 7 ) 
	{
		nScratch = m_lBitStorage >> (m_nBitsRemaining - 8);
		szOutput[ i++ ] = nScratch & 0xFF;
		m_nBitsRemaining -= 8;
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产视频在线| 婷婷久久综合九色综合伊人色| 国产精品乱码一区二区三区软件| 一区二区欧美视频| 国产精品一区二区久久精品爱涩| 欧美午夜精品一区二区三区| 精品久久久久久无| 日韩和欧美一区二区| www.久久精品| 日本一区二区三区电影| 美女视频黄久久| 欧美日韩国产一级片| 亚洲视频一二三区| 国产精品一二一区| 26uuu国产日韩综合| 日韩1区2区3区| 欧美日韩亚洲综合在线| 中文字幕一区二区三区不卡| 激情另类小说区图片区视频区| 欧美日韩久久久久久| 亚洲人成伊人成综合网小说| 国产jizzjizz一区二区| 精品精品国产高清一毛片一天堂| 亚洲bt欧美bt精品777| 在线精品视频免费播放| 综合av第一页| 91污在线观看| 亚洲欧美另类小说视频| av网站免费线看精品| 午夜精品久久久久久久久| 99精品偷自拍| **欧美大码日韩| 91老师国产黑色丝袜在线| 成人欧美一区二区三区在线播放| 不卡视频一二三四| 一区在线观看免费| 91色.com| 午夜影院久久久| 这里只有精品电影| 蜜芽一区二区三区| 日韩视频永久免费| 韩国三级电影一区二区| 国产日产欧产精品推荐色 | 色偷偷88欧美精品久久久| 中文字幕一区二区三区不卡| 99精品国产99久久久久久白柏| 日韩美女久久久| 欧洲激情一区二区| 免费成人在线视频观看| 亚洲精品一区二区三区在线观看| 狠狠狠色丁香婷婷综合激情| 日本一区二区三区在线观看| 成人av电影观看| 亚洲一区二区在线视频| 51精品视频一区二区三区| 精品一区二区三区蜜桃| 国产精品色哟哟| 欧美性猛交一区二区三区精品 | 91精品国产综合久久精品| 欧美96一区二区免费视频| 久久久久久一二三区| eeuss影院一区二区三区| 亚洲综合一区二区三区| 欧美一区二区三区色| 懂色av中文字幕一区二区三区| 亚洲卡通欧美制服中文| 91精品国产欧美日韩| 成人h版在线观看| 国产成人啪免费观看软件| 国产精品萝li| 日韩欧美综合在线| 91尤物视频在线观看| 美女尤物国产一区| 亚洲欧洲99久久| 欧美成人精品二区三区99精品| 不卡影院免费观看| 美女尤物国产一区| 一区二区三区中文字幕| 精品国产91九色蝌蚪| 在线观看日韩电影| 国产91富婆露脸刺激对白| 日韩国产一二三区| 亚洲精品高清视频在线观看| 精品免费国产一区二区三区四区| 97久久精品人人爽人人爽蜜臀| 久久国产夜色精品鲁鲁99| 亚洲精品v日韩精品| 国产网红主播福利一区二区| 678五月天丁香亚洲综合网| 91麻豆产精品久久久久久| 久久99精品国产.久久久久久| 亚洲黄色录像片| 国产精品污污网站在线观看| 日韩三级免费观看| 在线播放日韩导航| 欧美亚洲国产一卡| 91偷拍与自偷拍精品| 国产69精品一区二区亚洲孕妇| 久久国产精品露脸对白| 午夜电影网一区| 亚洲一二三四在线| 一区二区三区精品视频在线| 国产精品成人免费精品自在线观看 | 欧美军同video69gay| 91电影在线观看| 91偷拍与自偷拍精品| 91免费视频网| 91影院在线免费观看| 日韩欧美综合在线| 正在播放一区二区| 91精品国产色综合久久不卡电影| 欧美视频在线播放| 欧美三级日韩三级国产三级| 在线区一区二视频| 欧美色手机在线观看| 欧美日韩极品在线观看一区| 欧美亚洲丝袜传媒另类| 欧美日韩你懂得| 欧美精品自拍偷拍| 日韩小视频在线观看专区| 欧美一区二区三区视频在线| 日韩欧美卡一卡二| 精品国免费一区二区三区| 久久嫩草精品久久久久| 亚洲国产高清不卡| 亚洲少妇中出一区| 亚洲综合在线第一页| 日本大胆欧美人术艺术动态| 免费xxxx性欧美18vr| 国产精品亚洲成人| av福利精品导航| 欧美色区777第一页| 欧美一区二区三区在线观看视频 | 亚洲视频 欧洲视频| 亚洲女同一区二区| 亚洲超碰97人人做人人爱| 日韩福利电影在线| 国产一区二区伦理| 91在线云播放| 欧美另类高清zo欧美| 日韩精品一区二区三区四区| 欧美激情一区三区| 亚洲小少妇裸体bbw| 久久精品免费观看| 成人18视频在线播放| 精品污污网站免费看| 精品国产精品一区二区夜夜嗨| 国产精品无圣光一区二区| 五月激情六月综合| 国产精品一区在线观看你懂的| 91捆绑美女网站| 欧美zozo另类异族| ...中文天堂在线一区| 青青国产91久久久久久| av在线不卡电影| 91精品国产黑色紧身裤美女| 国产精品欧美一区喷水| 视频在线观看一区| 99亚偷拍自图区亚洲| 制服丝袜亚洲播放| 亚洲欧洲精品一区二区三区 | 韩国av一区二区三区四区| 成人动漫av在线| 日韩欧美在线1卡| 亚洲欧美一区二区不卡| 久久99国产精品久久| 欧美视频在线不卡| 国产精品伦一区二区三级视频| 蜜臀av一区二区在线观看| 成人伦理片在线| 精品国产91洋老外米糕| 亚洲国产裸拍裸体视频在线观看乱了 | 国产精品一区二区无线| 欧美日本国产视频| 亚洲视频一区在线观看| 国产精品一区二区三区网站| 欧美一区二区视频网站| 亚洲成av人片一区二区梦乃| 成人午夜私人影院| 久久综合色综合88| 视频在线在亚洲| 欧美中文字幕亚洲一区二区va在线 | 久草这里只有精品视频| 欧美日韩久久久一区| 亚洲精品成人在线| 波多野结衣一区二区三区| 久久久久国产精品麻豆| 理论电影国产精品| 91精品黄色片免费大全| 亚洲高清免费视频| 欧美性生活一区| 亚洲免费av观看| 色综合天天综合网天天狠天天 | 粉嫩高潮美女一区二区三区 | 亚洲欧美aⅴ...| 91在线码无精品| 亚洲女人的天堂| 色婷婷久久久久swag精品| 亚洲人被黑人高潮完整版| 99精品国产热久久91蜜凸|