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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? basecode.cpp

?? 常用字符串hash算法
?? CPP
字號(hào):
// basecode.cpp - written and placed in the public domain by Wei Dai#include "pch.h"#include "basecode.h"#include "fltrimpl.h"#include <ctype.h>NAMESPACE_BEGIN(CryptoPP)void BaseN_Encoder::IsolatedInitialize(const NameValuePairs &parameters){	parameters.GetRequiredParameter("BaseN_Encoder", "EncodingLookupArray", m_alphabet);	parameters.GetRequiredIntParameter("BaseN_Encoder", "Log2Base", m_bitsPerChar);	if (m_bitsPerChar <= 0 || m_bitsPerChar >= 8)		throw InvalidArgument("BaseN_Encoder: Log2Base must be between 1 and 7 inclusive");	byte padding;	bool pad;	if (parameters.GetValue("PaddingByte", padding))		pad = parameters.GetValueWithDefault("Pad", true);	else		pad = false;	m_padding = pad ? padding : -1;	m_bytePos = m_bitPos = 0;	int i = 8;	while (i%m_bitsPerChar != 0)		i += 8;	m_outputBlockSize = i/m_bitsPerChar;	m_outBuf.New(m_outputBlockSize);}unsigned int BaseN_Encoder::Put2(const byte *begin, unsigned int length, int messageEnd, bool blocking){	FILTER_BEGIN;	while (m_inputPosition < length)	{		if (m_bytePos == 0)			memset(m_outBuf, 0, m_outputBlockSize);		{		unsigned int b = begin[m_inputPosition++], bitsLeftInSource = 8;		while (true)		{			assert(m_bitPos < m_bitsPerChar);			unsigned int bitsLeftInTarget = m_bitsPerChar-m_bitPos;			m_outBuf[m_bytePos] |= b >> (8-bitsLeftInTarget);			if (bitsLeftInSource >= bitsLeftInTarget)			{				m_bitPos = 0;				++m_bytePos;				bitsLeftInSource -= bitsLeftInTarget;				if (bitsLeftInSource == 0)					break;				b <<= bitsLeftInTarget;				b &= 0xff;			}			else			{				m_bitPos += bitsLeftInSource;				break;			}		}		}		assert(m_bytePos <= m_outputBlockSize);		if (m_bytePos == m_outputBlockSize)		{			int i;			for (i=0; i<m_bytePos; i++)			{				assert(m_outBuf[i] < (1 << m_bitsPerChar));				m_outBuf[i] = m_alphabet[m_outBuf[i]];			}			FILTER_OUTPUT(1, m_outBuf, m_outputBlockSize, 0);						m_bytePos = m_bitPos = 0;		}	}	if (messageEnd)	{		if (m_bitPos > 0)			++m_bytePos;		int i;		for (i=0; i<m_bytePos; i++)			m_outBuf[i] = m_alphabet[m_outBuf[i]];		if (m_padding != -1 && m_bytePos > 0)		{			memset(m_outBuf+m_bytePos, m_padding, m_outputBlockSize-m_bytePos);			m_bytePos = m_outputBlockSize;		}		FILTER_OUTPUT(2, m_outBuf, m_bytePos, messageEnd);		m_bytePos = m_bitPos = 0;	}	FILTER_END_NO_MESSAGE_END;}void BaseN_Decoder::IsolatedInitialize(const NameValuePairs &parameters){	parameters.GetRequiredParameter("BaseN_Decoder", "DecodingLookupArray", m_lookup);	parameters.GetRequiredIntParameter("BaseN_Decoder", "Log2Base", m_bitsPerChar);	if (m_bitsPerChar <= 0 || m_bitsPerChar >= 8)		throw InvalidArgument("BaseN_Decoder: Log2Base must be between 1 and 7 inclusive");	m_bytePos = m_bitPos = 0;	int i = m_bitsPerChar;	while (i%8 != 0)		i += m_bitsPerChar;	m_outputBlockSize = i/8;	m_outBuf.New(m_outputBlockSize);}unsigned int BaseN_Decoder::Put2(const byte *begin, unsigned int length, int messageEnd, bool blocking){	FILTER_BEGIN;	while (m_inputPosition < length)	{		unsigned int value;		value = m_lookup[begin[m_inputPosition++]];		if (value >= 256)			continue;		if (m_bytePos == 0 && m_bitPos == 0)			memset(m_outBuf, 0, m_outputBlockSize);		{			int newBitPos = m_bitPos + m_bitsPerChar;			if (newBitPos <= 8)				m_outBuf[m_bytePos] |= value << (8-newBitPos);			else			{				m_outBuf[m_bytePos] |= value >> (newBitPos-8);				m_outBuf[m_bytePos+1] |= value << (16-newBitPos);			}			m_bitPos = newBitPos;			while (m_bitPos >= 8)			{				m_bitPos -= 8;				++m_bytePos;			}		}		if (m_bytePos == m_outputBlockSize)		{			FILTER_OUTPUT(1, m_outBuf, m_outputBlockSize, 0);			m_bytePos = m_bitPos = 0;		}	}	if (messageEnd)	{		FILTER_OUTPUT(2, m_outBuf, m_bytePos, messageEnd);		m_bytePos = m_bitPos = 0;	}	FILTER_END_NO_MESSAGE_END;}void BaseN_Decoder::InitializeDecodingLookupArray(int *lookup, const byte *alphabet, unsigned int base, bool caseInsensitive){	std::fill(lookup, lookup+256, -1);	for (unsigned int i=0; i<base; i++)	{		if (caseInsensitive && isalpha(alphabet[i]))		{			assert(lookup[toupper(alphabet[i])] == -1);			lookup[toupper(alphabet[i])] = i;			assert(lookup[tolower(alphabet[i])] == -1);			lookup[tolower(alphabet[i])] = i;		}		else		{			assert(lookup[alphabet[i]] == -1);			lookup[alphabet[i]] = i;		}	}}void Grouper::IsolatedInitialize(const NameValuePairs &parameters){	m_groupSize = parameters.GetIntValueWithDefault("GroupSize", 0);	ConstByteArrayParameter separator, terminator;	if (m_groupSize)		parameters.GetRequiredParameter("Grouper", "Separator", separator);	parameters.GetValue("Terminator", terminator);	m_separator.Assign(separator.begin(), separator.size());	m_terminator.Assign(terminator.begin(), terminator.size());	m_counter = 0;}unsigned int Grouper::Put2(const byte *begin, unsigned int length, int messageEnd, bool blocking){	FILTER_BEGIN;	if (m_groupSize)	{		while (m_inputPosition < length)		{			if (m_counter == m_groupSize)			{				FILTER_OUTPUT(1, m_separator, m_separator.size(), 0);				m_counter = 0;			}			unsigned int len;			FILTER_OUTPUT2(2, len = STDMIN(length-m_inputPosition, m_groupSize-m_counter),				begin+m_inputPosition, len, 0);			m_inputPosition += len;			m_counter += len;		}	}	else		FILTER_OUTPUT(3, begin, length, 0);	if (messageEnd)		FILTER_OUTPUT(4, m_terminator, m_terminator.size(), messageEnd);	FILTER_END_NO_MESSAGE_END}NAMESPACE_END

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品欧美一区二区蜜桃免费 | 亚洲欧洲另类国产综合| 色综合久久88色综合天天6| 男女性色大片免费观看一区二区| 国产偷国产偷精品高清尤物| 欧美日韩在线播放三区四区| 不卡一卡二卡三乱码免费网站 | 91美女蜜桃在线| 国产乱码字幕精品高清av| 亚洲成人av免费| 中文字幕佐山爱一区二区免费| 26uuu亚洲| 欧美一级国产精品| 欧美男人的天堂一二区| 波多野结衣的一区二区三区| 国产一区二区不卡在线| 首页国产欧美日韩丝袜| 亚洲久本草在线中文字幕| 日本一区二区三区高清不卡| 日韩你懂的在线观看| 欧美日韩精品一区二区三区蜜桃| eeuss鲁片一区二区三区在线看| 精品一区二区国语对白| 蜜臀91精品一区二区三区| 亚洲午夜久久久久久久久电影网 | 亚洲国产精品黑人久久久| 日韩视频一区二区三区| 欧美日本免费一区二区三区| 色婷婷av一区二区三区gif| av在线一区二区| 成人免费va视频| 国产成人啪午夜精品网站男同| 另类欧美日韩国产在线| 美美哒免费高清在线观看视频一区二区| 亚洲综合免费观看高清完整版| 亚洲欧美日韩国产另类专区| 中文字幕一区二区三区在线观看| 国产日韩影视精品| 亚洲国产成人一区二区三区| 久久久精品免费网站| 久久精品欧美一区二区三区不卡 | 粉嫩av一区二区三区在线播放 | 天堂在线亚洲视频| 亚洲在线中文字幕| 亚洲精品久久久久久国产精华液| 亚洲精品网站在线观看| 亚洲综合丝袜美腿| 五月天久久比比资源色| 日韩av一区二区在线影视| 日本成人在线一区| 久久国产免费看| 国产盗摄视频一区二区三区| 成人一区二区三区视频在线观看| 国产aⅴ综合色| 成人午夜视频在线| 色哟哟国产精品| 欧美日韩一级黄| 日韩一二三四区| 久久无码av三级| 亚洲欧洲av在线| 亚洲h动漫在线| 激情都市一区二区| 成人午夜av影视| 精品欧美一区二区久久| 国产婷婷一区二区| 亚洲免费在线视频| 日韩成人免费看| 国产精品一区二区在线观看不卡 | 国产不卡高清在线观看视频| av电影在线观看不卡| 欧美亚洲日本一区| 日韩亚洲欧美成人一区| 国产欧美日韩久久| 一区二区三区欧美| 久色婷婷小香蕉久久| 国产a视频精品免费观看| 色婷婷国产精品久久包臀| 日韩欧美一区二区三区在线| 国产精品视频你懂的| 亚洲国产日韩一区二区| 国产精品88av| 欧美日韩黄视频| 国产欧美日韩在线| 亚洲小说春色综合另类电影| 久久99国产精品尤物| 91丨porny丨最新| 日韩欧美国产系列| 亚洲欧美一区二区三区极速播放 | 一区二区三区中文免费| 久热成人在线视频| 欧洲精品一区二区三区在线观看| 精品粉嫩超白一线天av| 亚洲国产综合在线| 成人黄色小视频| 日韩一区二区电影| 一级精品视频在线观看宜春院 | 中文字幕在线免费不卡| 日本亚洲最大的色成网站www| 成人看片黄a免费看在线| 日韩一级在线观看| 一区二区三区中文在线观看| 福利一区福利二区| 欧美本精品男人aⅴ天堂| 亚洲资源中文字幕| 99久久99久久久精品齐齐| 久久综合色一综合色88| 青草av.久久免费一区| 91黄色激情网站| 国产精品免费人成网站| 国精产品一区一区三区mba视频| 欧美体内she精高潮| 色视频一区二区| 精品亚洲国产成人av制服丝袜| 欧美日韩综合在线| 亚洲一区中文在线| 91年精品国产| 中文字幕在线观看一区| 国产成人精品三级麻豆| 2019国产精品| 久久国产精品99久久久久久老狼| 欧美日韩国产色站一区二区三区| 亚洲免费资源在线播放| av电影天堂一区二区在线观看| 欧美韩国日本一区| 国产一区二区导航在线播放| 日韩精品一区二区三区在线| 日韩成人午夜电影| 欧美一区二区三区思思人 | 成人在线视频一区二区| 久久天天做天天爱综合色| 国内精品国产成人| 日韩一区二区三区精品视频 | 一区二区三区免费在线观看| 99热99精品| 国产精品电影院| www.成人在线| 亚洲免费观看视频| 欧美在线视频全部完| 亚洲午夜久久久久中文字幕久| 欧美色综合天天久久综合精品| 亚洲免费三区一区二区| 91麻豆精东视频| 亚洲综合一区在线| 欧美日韩高清一区二区| 日韩成人午夜精品| 精品少妇一区二区三区在线播放 | 免费在线成人网| 日韩视频免费观看高清完整版在线观看 | 欧美日韩精品一区二区天天拍小说 | 久久av中文字幕片| 精品久久久久久久久久久久久久久| 另类综合日韩欧美亚洲| 久久这里只有精品6| 成人黄色av电影| 亚洲天堂久久久久久久| 欧美专区在线观看一区| 日本伊人午夜精品| 久久综合网色—综合色88| 国产成人丝袜美腿| 一区二区三区免费观看| 日韩一级大片在线观看| 国产精品一区在线观看乱码| 亚洲天堂福利av| 欧美老女人在线| 国产一区二区三区免费在线观看 | 亚洲一卡二卡三卡四卡五卡| 欧美精品免费视频| 国产一区二区不卡| 亚洲卡通动漫在线| 欧美一区二区网站| 风间由美性色一区二区三区| 亚洲综合男人的天堂| 26uuu国产日韩综合| 91丨porny丨国产入口| 日日摸夜夜添夜夜添国产精品 | 天天综合色天天综合色h| 2023国产精品自拍| 在线中文字幕一区二区| 另类小说图片综合网| 综合久久给合久久狠狠狠97色| 欧美美女视频在线观看| 国产精品综合在线视频| 亚洲欧美日本韩国| 精品久久一区二区| 色系网站成人免费| 精品无人码麻豆乱码1区2区| 日韩一区在线播放| 欧美一区二区三区人| 99在线精品观看| 国产综合久久久久久久久久久久| 亚洲欧美成人一区二区三区| 精品国产亚洲一区二区三区在线观看| 色综合久久中文字幕| 国产精品亚洲成人| 免费成人在线观看视频| 亚洲夂夂婷婷色拍ww47| 国产精品日韩成人| 精品久久久久久最新网址| 欧美色精品在线视频| 99视频一区二区|