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

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

?? pdu.cpp

?? 用一個開源碼ASCII ENCODE,DECODE,來發送ASCII短信
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
#include <iostream>#include <string>#include <sstream>#include <stdlib.h>#include "pdu.h"using namespace std;using std::string;/** * string semiOctetToString ( string ) * --------------------------------------------------------------- * Converts a string representing semi-octets to an octet * string. *  * Example: * string semiOctetString = "123456789A"; * string MyString = semiOctetToString(semiOctetString); * cout << MyString << endl; *  * ( will result in 21436587A9 , being printed ) *  * */string pdu::semiOctetToString (string semiOctet) {	unsigned int i;	string OctetString;		for (i = 0; i < ( semiOctet.length() / 2 ); i++) {		OctetString += semiOctet.substr(i*2 + 1, 1);		OctetString += semiOctet.substr(i*2, 1);	}	return OctetString;}/** * string stringToSemiOctet ( string ) * --------------------------------------------------------------- * Converts a string to a semi-octet string, and if necessary * pad the original string with 'F' to make it compatible. *  * Example: * string OctetString = "123456789"; * string MyString = stringToSemiOctet(OctetString); * cout << MyString << endl; *  * ( will result in 21436587F9 , being printed ) *  * */string pdu::stringToSemiOctet (string StringData) {	if ( StringData.length() % 2 != 0 ) {		StringData += "F";	}		return semiOctetToString(StringData);}/** * int hexStringToInt ( string ) * --------------------------------------------------------------- * Converts a string representing a hexadecimal value to a an * integer *  * Example: * string HexString = "0A"; * int MyInt = hexStringToInt(HexString); * cout << MyInt << endl; *  * ( will result in 10 , being printed ) *  * */int pdu::hexStringToInt (string hexString) {	unsigned int i;	int charvalue;	int returnvalue = 0;		for (i = 0; i < hexString.length(); i++) {		if ( hexString[i] >= 'a' && hexString[i] <= 'f' ) {			charvalue = (int) hexString[i] - 87;		}		if ( hexString[i] >= 'A' && hexString[i] <= 'F' ) {			charvalue = (int) hexString[i] - 55;		}		if ( hexString[i] >= '0' && hexString[i] <= '9' ) {			charvalue = (int) hexString[i] - 48;		}		returnvalue += charvalue * ( pow(16, (int)(hexString.length() - (i + 1)) ));	}	return returnvalue;}/** * string intToHexString ( int ) * --------------------------------------------------------------- * Converts an integer to a string representing the hexadecimal value * of the integer. The result will be have a 0 prepended to make the * string length even. *  * Example: * int MyInt = 10; * string MyHex = intToHexString(MyInt); * cout << MyHex << endl; *  * ( will result in "0A" , being printed ) *  * */string pdu::intToHexString (int integer) {	string hexString = "";	/*	for (int i=2*sizeof(int) - 1; i>=0; i--) {		if ( ( (integer >> i*4) & 0xF ) != 0 )  {			hexString += "0123456789ABCDEF"[((integer >> i*4) & 0xF)];					}	}	if ( hexString.length() % 2 != 0 ){		hexString = "0" + hexString;	}	*/	//Changed Conversion from intToHex from above to below...	char buf[3];	sprintf(buf,"%X",integer);	hexString = (string)buf;	//Prepend a 0 when not even	if ( hexString.length() % 2 != 0 ){		hexString = "0" + hexString;	}		return hexString;}/** * int binStringToInt ( string ) * --------------------------------------------------------------- * Converts a string representing a binary value to a an * integer *  * Example: * string BinString = "01111"; * int MyInt = binStringToInt(BinString); * cout << MyInt << endl; *  * ( will result in 15 , being printed ) *  * */int pdu::binStringToInt (string binString) {		unsigned int pos;	int integerReturn = 0;	int base = 2;		for (pos = 0; pos < binString.length(); pos++) {		if ( binString.substr(pos, 1) == "1" ) {			integerReturn += pow(base, (binString.length() - (pos + 1)) );		}	}	return integerReturn;}/** * string intToBinString ( int ) * --------------------------------------------------------------- * Converts an integer to a string representing the binary value * of the integer. padded to make the string a multiple of 8 characters long *  * Example: * int MyInt = 16; * string MyBin = intToBinString(MyInt); * cout << MyBin << endl; *  * ( will result in "00010000" , being printed ) *  * */string pdu::intToBinString (int integer) {	string stringReturn;		if (integer <= 0) {		return "0";	}		while ( integer > 0 ) {		if ( integer % 2 == 1 ) {			stringReturn = "1" + stringReturn;			--integer;		} else {			stringReturn = "0" + stringReturn;		}		integer = integer / 2;	}	//Changed 8 to 7 because the characters are in septets	while ( stringReturn.length() % 7 != 0 ) {		stringReturn = "0" + stringReturn;	}	return stringReturn;}/** * int pow ( int, int ) * --------------------------------------------------------------- * Calculates int 1 to the power of int 2. *  * Example: * int MyInt1 = 10; * int MyInt2 = 2; * int MyResult = pow(MyInt1, MyInt2); * cout << MyResult << endl; *  * ( will result in 100 , being printed ) *  * */int pdu::pow(int n, int i){   if (i == 0)      return 1;   else if (i == 1)      return n;   else {      int partial = pow(n, i / 2);      if (i % 2 == 0)         return partial * partial;      else         return partial * partial * n;   }}/** * int parsePDU ( string ) * --------------------------------------------------------------- * Parses a string representing a SMS in PDU mode *  * Example: * pdu MyPDU; * int MyResult = MyPDU.parsePDU("ADGHJ....5F"); * cout << MyResult << endl; *  * ( will result in 1 , being printed if ok, -1 on failure ) *  * */void pdu::parsePDU(string pduString) {	int stringLocation = 0;				this->smsc_length = hexStringToInt(pduString.substr(stringLocation, 2));	stringLocation += 2;		if ( this->smsc_length != 0 ) {					this->smsc_type_of_address = hexStringToInt(pduString.substr(stringLocation, 2));		stringLocation += 2;				this->smsc_number = semiOctetToString( pduString.substr(stringLocation, ( this->smsc_length -1 ) * 2 ) );		if ( this->smsc_number[this->smsc_number.length() - 1 ] == 'F' ) {			this->smsc_number = this->smsc_number.substr(0, this->smsc_number.length() - 1);		}		stringLocation += ( this->smsc_length -1 ) * 2;	} else {				this->smsc_type_of_address = 0;		this->smsc_number = "0";	}		this->sms_deliver = hexStringToInt(pduString.substr(stringLocation, 2));	stringLocation += 2;		if (this->sms_deliver & 0x03) {				parsePDU_send(pduString.substr(stringLocation, (pduString.length() - stringLocation  )));	} else {		parsePDU_receive(pduString.substr(stringLocation, (pduString.length() - stringLocation )));	}}/** * void parsePDU_receive ( string ) * --------------------------------------------------------------- * Parses a string representing a SMS in PDU mode *  * Example: * pdu MyPDU; * int MyResult = MyPDU.parsePDU("ADGHJ....5F"); * cout << MyResult << endl; *  * ( will result in 1 , being printed if ok, -1 on failure ) *  * */void pdu::parsePDU_receive(string pduString) {	int stringLocation = 0;			// SENDER Lenght	this->sender_length = hexStringToInt(pduString.substr(stringLocation, 2));	stringLocation += 2;	if ( this->sender_length != 0 ) {		// SENDER Type of address		this->sender_type_of_address = hexStringToInt(pduString.substr(stringLocation, 2));		stringLocation += 2;				// SENDER Number		int evenSenderLength = this->sender_length + ( this->sender_length % 2 );		this->sender_number = semiOctetToString( pduString.substr(stringLocation, evenSenderLength ));		this->sender_number = this->sender_number.substr(0, this->sender_length);		stringLocation += evenSenderLength;	}	// PROTOCOL Identifier	this->tp_pid = hexStringToInt(pduString.substr(stringLocation, 2));	stringLocation += 2;	//DATA Coding scheme tp_dcs

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色婷婷久久久综合中文字幕| 国产亚洲欧美一区在线观看| 精品国产a毛片| 夜夜操天天操亚洲| 成人小视频免费观看| 日韩视频在线一区二区| 亚洲综合一区二区三区| 国产宾馆实践打屁股91| 精品日韩一区二区三区| 午夜伊人狠狠久久| 91国内精品野花午夜精品 | 狠狠色综合播放一区二区| 在线视频一区二区三| 国产欧美日韩亚州综合| 激情五月婷婷综合| 日韩精品一区二区三区视频播放 | 欧美三级电影网| 中文字幕亚洲欧美在线不卡| 国产精品18久久久久久久久 | 欧美日韩一区中文字幕| 亚洲伦理在线免费看| 成人久久18免费网站麻豆| 国产亚洲精品免费| 国产精品一二二区| 久久精品一区二区三区不卡| 国产精品乡下勾搭老头1| 精品国产精品网麻豆系列| 美国三级日本三级久久99| 91精品欧美久久久久久动漫| 免费一级片91| 精品国产91乱码一区二区三区 | 亚洲国产精品嫩草影院| 一本色道久久综合亚洲aⅴ蜜桃| 亚洲欧洲在线观看av| av电影在线观看一区| 国产精品色在线| 99久久精品国产麻豆演员表| 亚洲欧洲色图综合| 日本电影亚洲天堂一区| 亚洲综合视频在线观看| 欧美日韩二区三区| 免费观看成人鲁鲁鲁鲁鲁视频| 日韩精品一区在线| 国产99一区视频免费| 亚洲天堂中文字幕| 欧美日韩一区三区| 麻豆91免费观看| 欧美激情一区二区在线| 色视频成人在线观看免| 日韩电影在线观看一区| 久久久久久久久一| 91啦中文在线观看| 日韩激情视频在线观看| 欧美精品一区二区三区久久久| 成人影视亚洲图片在线| 亚洲成人激情综合网| 日韩欧美电影一区| 成a人片国产精品| 日一区二区三区| 国产日产欧美一区二区视频| 在线观看亚洲精品| 国产主播一区二区三区| 亚洲蜜桃精久久久久久久| 91精品一区二区三区久久久久久| 国产一区二区免费视频| 亚洲日本在线看| 精品久久免费看| 欧美伊人精品成人久久综合97| 老汉av免费一区二区三区| 国产精品国产自产拍高清av王其| 欧美婷婷六月丁香综合色| 国产成都精品91一区二区三| 亚洲福利视频三区| 中文字幕国产精品一区二区| 337p亚洲精品色噜噜| 不卡av在线网| 久久国产精品99久久人人澡| 亚洲另类春色国产| 久久影音资源网| 欧美精品第一页| 色偷偷久久人人79超碰人人澡| 韩国成人福利片在线播放| 亚洲成av人片一区二区| 国产精品成人免费精品自在线观看| 欧美一区二区三区四区久久 | 国产成人亚洲综合a∨猫咪| 午夜激情综合网| 亚洲免费在线播放| 国产欧美日韩精品一区| 精品88久久久久88久久久| 欧美日韩日日骚| 一本色道a无线码一区v| 国产不卡视频一区二区三区| 精品一区二区影视| 天堂久久一区二区三区| 亚洲柠檬福利资源导航| 欧美国产乱子伦 | 亚洲狠狠丁香婷婷综合久久久| 久久精品一区二区三区不卡牛牛 | 欧美丝袜丝nylons| 91视频国产资源| av毛片久久久久**hd| 国产69精品久久99不卡| 国产一区二区三区免费| 久草精品在线观看| 美腿丝袜亚洲色图| 黄页视频在线91| 久草精品在线观看| 国内精品视频666| 国产精品一区二区三区四区| 国产在线一区二区| 国产一区久久久| 精品亚洲国产成人av制服丝袜| 美女精品一区二区| 久久99久久久欧美国产| 激情成人综合网| 国产精品一区不卡| www.日韩大片| 欧美丝袜丝交足nylons| 欧美剧情电影在线观看完整版免费励志电影 | 男人的j进女人的j一区| 日本美女一区二区| 久久99久久99| 高清不卡在线观看av| 99精品国产热久久91蜜凸| 91看片淫黄大片一级在线观看| 91片黄在线观看| 欧美二区在线观看| 精品国产乱码久久久久久久久| 久久五月婷婷丁香社区| 国产女人aaa级久久久级| 亚洲人成在线播放网站岛国| 亚洲午夜久久久久久久久久久 | 日韩欧美国产午夜精品| 国产视频一区在线观看| 亚洲视频综合在线| 日本视频中文字幕一区二区三区| 黄色资源网久久资源365| eeuss鲁片一区二区三区在线观看| 欧美在线观看视频一区二区 | 成人性生交大片免费看在线播放| av中文字幕亚洲| 欧美美女黄视频| 久久久一区二区| 亚洲欧美激情在线| 免费久久99精品国产| 丁香六月久久综合狠狠色| 欧美视频自拍偷拍| 久久免费电影网| 亚洲午夜精品17c| 国产精品综合av一区二区国产馆| 91在线视频播放| 2020国产精品久久精品美国| 亚洲图片另类小说| 狠狠久久亚洲欧美| 欧美日韩一区二区三区不卡| 亚洲精品在线观看网站| 一区二区三区在线观看视频| 紧缚奴在线一区二区三区| 欧美性生活影院| 国产精品不卡视频| 久久精品国产精品青草| 欧美日韩在线播| 亚洲日本va午夜在线影院| 国产一区日韩二区欧美三区| 欧美精选一区二区| 亚洲精品免费播放| 丁香婷婷综合色啪| 日韩美女在线视频| 日韩高清不卡在线| 欧美在线观看你懂的| 中文字幕在线一区| 国产精品资源在线| 精品伦理精品一区| 亚洲bt欧美bt精品| 色国产精品一区在线观看| 国产三级精品在线| 激情综合色丁香一区二区| 欧美一区二区三区人| 亚洲五码中文字幕| 色美美综合视频| 亚洲日本一区二区| 91老师片黄在线观看| 亚洲欧洲av色图| 99精品视频在线播放观看| 欧美激情一区二区| 成人亚洲精品久久久久软件| 国产欧美一区二区精品忘忧草 | 亚洲国产成人私人影院tom| 精品亚洲免费视频| 久久亚洲欧美国产精品乐播| 久久av老司机精品网站导航| 日韩欧美国产小视频| 久久精品国产精品青草| 日韩欧美高清dvd碟片| 久久超碰97人人做人人爱| 欧美mv日韩mv| 国产永久精品大片wwwapp| 久久你懂得1024| 国产不卡视频一区|