• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++ ReadLong函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中ReadLong函数的典型用法代码示例。如果您正苦于以下问题:C++ ReadLong函数的具体用法?C++ ReadLong怎么用?C++ ReadLong使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了ReadLong函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: MReadKbd

void MReadKbd()
{
  int ccode,mod;
  int kbrd_called=0;
  
  while(qCharLen())
    {
      asciiChar=charAscii[charHead];
      ccode=charBuff[charHead][1];
      mod=charBuff[charHead++][0];
      
      if (charHead>=CHAR_BUFF_LEN) charHead=0;
      /*printf("char %c %d\t ccode %d\n",asciiChar,asciiChar,ccode);*/

      reg[1]=ccode;
      reg[2]=mod;
      

      aReg[2]=ReadLong(0x2804c);
      /* printf("calling subr %d\n",((w16)(uw16)ReadWord(0x150))+0x4000);*/
      QLsubr(ReadWord(0x150)+0x4000,2000000);
      /*printf("result: %d\n",reg[0]);*/
      kbrd_called=1;
      
    }

  if (gKeyDown /*&& !MButtonDown /*|| kbrd_called */)
    {
      kbrd_called=0;
      aReg[2]=ReadLong(0x2804c);
      reg[5]=-1;/*(gKeyDown!=0)<<4;*/
      
      QLsubr(ReadWord(0x152)+0x4000,2000000);
    }
} 
开发者ID:daveysaxt,项目名称:MacQL,代码行数:35,代码来源:QL_hardware.c


示例2: ReadLong

void scContUnit::Read( scSet*		enumTable,
					   APPCtxPtr	ctxPtr,
					   IOFuncPtr	readFunc )
{
	scTBObj::Read( enumTable, ctxPtr, readFunc );

	ReadLong( fParaCount, ctxPtr, readFunc, kIntelOrder );
	
	fCharArray.Read( ctxPtr, readFunc );
	
	fSpecRun.Read( ctxPtr, readFunc );

	long diskid;
	ReadLong( diskid, ctxPtr, readFunc, kIntelOrder );
	
	TypeSpec spec( (stSpec*)APPDiskIDToPointer( ctxPtr, diskid, diskidTypespec ) );
	defspec_ = spec;

#ifdef _RUBI_SUPPORT
	long rubipresent;
	ReadLong( rubipresent, ctxPtr, readFunc, kIntelOrder );
	if ( rubipresent ) {
		AllocRubiArray();
		fRubiArray->Read( ctxPtr, readFunc, rubipresent );
	}
#endif
		
	Mark( scRETABULATE );
	Mark( scREBREAK );
}
开发者ID:jimmccurdy,项目名称:ArchiveGit,代码行数:30,代码来源:Scparagr.cpp


示例3: WTRACE

// MMsgObsSubscribeById::Unpack
// Virtual method from MiniMessage.  Extracts data from message buffer.
void
MMsgObsSubscribeById::Unpack(void)
{
	WTRACE("MMsgObsSubscribeById::Unpack");
	MiniMessage::Unpack();

	if ((GetServiceType() != WONMsg::MiniObsServer) ||
	    (GetMessageType() != WONMsg::ObsMsg_SubscribeById))
	{
		WDBG_AH("MMsgObsSubscribeById::Unpack Not a ObsSubscribeById message!");
		throw WONMsg::BadMsgException(*this, __LINE__, __FILE__,
		                              "Not a ObsSubscribeById message.");
	}

	WDBG_LL("MMsgObsSubscribeById::Unpack Reading message data");

	mPublicationId = ReadLong();
	mSubscriberId = ReadLong();
	if (!mSubscriberId) // Optional parameters follow
	{
		ReadString(mSubscriberName);
		ReadWString(mSubscriberDescription);
		mConnectionType = (ConnectionTypeEnum)ReadShort();
		ReadString(mSubscriberAddress);
	}
}
开发者ID:vgck,项目名称:opendr2,代码行数:28,代码来源:MMsgObsSubscribeById.cpp


示例4: MDReadAudibleCommonHeader

static AudErrorCode MDReadAudibleCommonHeader( IAudibleInputStream *pFile, CAudibleCommonHeader *pCommonHead, long sectionSize )

{ if ( sectionSize != 24 )
  { return AUD_AA_FILE_BAD_FORMAT;
  }
//-------------- Now read. 
  { BOOL readRes =  
      ReadShort( pFile, &pCommonHead->versionNumber    ) && 
      ReadShort( pFile, &pCommonHead->minVersionNumber ) &&
      ReadLong ( pFile, &pCommonHead->magicNumber      ) &&
  //------------ Read information if this is partial file from larger one.   
      ReadLong( pFile, &pCommonHead->IsPartialFile )     &&
      ReadLong( pFile, &pCommonHead->sizeOfOriginalAudio ) &&
      ReadLong( pFile, &pCommonHead->segmentStart )      &&
      ReadLong( pFile, &pCommonHead->segmentEnd );       
  //----------------  
    if ( !readRes )
    { return AUD_FILE_READ_FAIL;
    }
    if ( pCommonHead->magicNumber != 0x57907536 || pCommonHead->minVersionNumber != 0 )
    { return AUD_AA_FILE_BAD_FORMAT;
    }
  //----------- If version more than 1 - means some new future format
    if ( pCommonHead->versionNumber > 1 || pCommonHead->versionNumber < 0 )
    { return AUD_AA_FILE_UNSOPPORTED_FORMAT;
    }
    return AUD_NO_ERROR;
  }
}
开发者ID:jackyogi,项目名称:STMP3XXX_SDK_FIRMWARE_320_finalfix_04-07-2008,代码行数:29,代码来源:AAMetadataOverlay.c


示例5: MeshFileInfo

FileInfo * VFSPlugin_LWO::Read(unsigned char *buffer, unsigned int length)
{
	m_offset	= 0;
	m_buffer	= buffer;
	m_length	= length;

	m_fileinfo					=	new MeshFileInfo();
	m_fileinfo->mesh			=	fusion->Mesh->CreateMesh();
	m_fileinfo->filelength	=	m_length;

	//	Read the FORM tag
	if(ReadLong() != ID_FORM)	return NULL;

	//	Read the entire data size
	long chunklen = ReadLong()-4;

	//	Read the LWO2 tag
	if(ReadLong() != ID_LWO2)	return NULL;

	//	Read chunks
	while(chunklen > 0)	chunklen -= ReadChunk();

	//	Process Surface (turn it into a useable mesh)
	ProcessSurface();

	//	Return a ptr to the file info
	return m_fileinfo;	
}
开发者ID:christhomas,项目名称:fusionengine,代码行数:28,代码来源:VFSPlugin_LWO.cpp


示例6: WTRACE

// TMsgDirFindServiceReply::Unpack
// Virtual method from TMessage.  Extracts data from message buffer.
void
TMsgDirFindServiceReply::Unpack(void)
{
	WTRACE("TMsgDirFindServiceReply::Unpack");
	TMessage::Unpack();

	if ((GetServiceType() != WONMsg::DirServer) ||
	    (GetMessageType() != WONMsg::DirFindServiceReply))
	{
		WDBG_AH("TMsgDirFindServiceReply::Unpack Not a DirFindServiceReply message!");
		throw WONMsg::BadMsgException(*this, __LINE__, __FILE__,
		                              "Not a DirFindServiceReply message.");
	}

	WDBG_LL("TMsgDirFindServiceReply::Unpack Reading message data");
	mStatus = static_cast<ServerStatus>(static_cast<short>(ReadShort()));

	// Service data only present if status is success
	if (mStatus == WONMsg::StatusCommon_Success)
	{
		mService.mType = DirServerEntry::EntryTypeService;
		ReadWString(mService.mPath);
		ReadWString(mService.mName);
		ReadWString(mService.mDisplayName);
		ReadWString(mService.mVersion);
		ReadWString(mService.mProtoName);
		ReadWString(mService.mProtoVersion);
		ReadWString(mService.mNetAddress);
		mService.mLifespan = ReadLong();
		mService.mCreated  = ReadLong();

		unsigned short aLen = ReadShort();
		mService.SetBlob(ReadBytes(aLen), aLen);
	}
}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:37,代码来源:TMsgDirFindService.cpp


示例7: ReadLong

void SMsgUsrGetPolledUserListReplyEx::unpack_multiple_message_specific_data()
	{
	// Retrieve the data source id

	m_i_data_source_id = ReadLong();

	// Retrieve the data source specific status information

	m_data_source_specific_status = static_cast<WONMsg::ServerStatus>(static_cast<short>(ReadShort()));

	// Retrieve the number of users found

	unsigned long number_of_user_objects = ReadLong();

	// Retrieve each user, adding each user to the end of the user vector array

	for (unsigned long counter = 0;
		 counter < number_of_user_objects;
		 counter++)
		{
		// Add a new user to the end of the array

		m_a_users.push_back(User());

		m_a_users.back().unpack_data(*this);
		}
	}
开发者ID:vgck,项目名称:opendr2,代码行数:27,代码来源:SMsgUsrGetPolledUserListReplyEx.c


示例8: ReadExtended

double ReadExtended(const unsigned char *bytes)
{
	double f;
	int expon;
	unsigned long hiMant, loMant;

	expon = ((bytes[0] & 0x7F) << 8) | (bytes[1] & 0xFF);
	hiMant = ReadLong(bytes+2);
	loMant = ReadLong(bytes+6);

	if (expon == 0 && hiMant == 0 && loMant == 0)
		f = 0;
	else {
		if (expon == 0x7FFF) /* Infinity or NaN */
			f = -1;
		else {
			expon -= 16383;
			/* must #include <math.h> or these won't work */
			f = ldexp(UnsignedToFloat(hiMant),expon -= 31);
			f += ldexp(UnsignedToFloat(loMant),expon -= 32);
		}
	}

	if (bytes[0] & 0x80)
		return -f;
	return f;
}
开发者ID:BAM-X,项目名称:frotz,代码行数:27,代码来源:ux_blorb.c


示例9: WTRACE

// SMsgDirG2PeerDataBase::UnpackPeerData
// Hook to unpack the peer data if needed.  Only reads peer data if peer
// data is present.  Note that mPeerUser was added later and may or may not be
// present.
void
SMsgDirG2PeerDataBase::UnpackPeerData(void)
{
	WTRACE("SMsgDirG2PeerDataBase::UnpackPeerData");
	if (BytesLeftToRead() > 0)
	{
		WDBG_LL("SMsgDirG2PeerDataBase::UnpackPeerData Reading peer data.");
		ReadString(mPeerKey);
		mPeerIndex = ReadLong();
		if (BytesLeftToRead() > 0)
		{
			WDBG_LL("SMsgDirG2PeerDataBase::UnpackPeerData Reading user id.");
			mPeerUser = ReadLong();
		}
		else
			mPeerUser = 0;
	}
	else
	{
		WDBG_LL("SMsgDirG2PeerDataBase::UnpackPeerData No peer data to read.");
		mPeerKey   = string();
		mPeerIndex = 0;
		mPeerUser  = 0;
	}
}
开发者ID:vgck,项目名称:opendr2,代码行数:29,代码来源:SMsgDirG2PeerDataBase.cpp


示例10: WTRACE

void
TMsgDirGetDirContentsReply::UnpackEntry(DirServerEntry& theEntry)
{
	WTRACE("TMsgDirGetDirContentsReply::UnpackEntry");
	WDBG_LL("TMsgDirGetDirContentsReply::UnpackEntry Unpacking entry");
	theEntry.mType = ReadByte();
	ReadWString(theEntry.mPath);
	ReadWString(theEntry.mName);
	ReadWString(theEntry.mDisplayName);
	theEntry.mLifespan = ReadLong();
	theEntry.mCreated  = ReadLong();

	if (theEntry.mType == DirServerEntry::EntryTypeDirectory)
	{
		theEntry.mVisible = (ReadByte() == 0 ? false : true);
	}
	else if (theEntry.mType == DirServerEntry::EntryTypeService)
	{
		ReadWString(theEntry.mVersion);
		ReadWString(theEntry.mProtoName);
		ReadWString(theEntry.mProtoVersion);
		ReadWString(theEntry.mNetAddress);
		theEntry.mBlobLen = ReadShort();
		theEntry.SetBlob(ReadBytes(theEntry.mBlobLen), theEntry.mBlobLen);
	}
}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:26,代码来源:TMsgDirGetDirContents.cpp


示例11: LoadTIMER

void LoadTIMER(SAVESTATE_t* save, timerc* time) {
	CHUNK_t* chunk = FindChunk(save,TIMER_tag);
	chunk->pnt = 0;

	time->tstates	= ReadLong(chunk);
	time->freq		= (uint32_t) ReadLong(chunk);
	time->elapsed	= ReadDouble(chunk);
	time->lasttime	= ReadDouble(chunk);	// this isn't used.
}
开发者ID:elfprince13,项目名称:cli-wabbitemu,代码行数:9,代码来源:savestate.cpp


示例12: ReadString

void vmStructure::StreamIn (std::istream& stream) {
#ifdef STREAM_NAMES
    m_name = ReadString (stream);
#endif
    m_firstField        = ReadLong (stream);
    m_fieldCount        = ReadLong (stream);
    m_dataSize          = ReadLong (stream);
    m_containsString    = ReadByte (stream);
    m_containsArray     = ReadByte (stream);
}
开发者ID:bmatthew1,项目名称:Basic4GL,代码行数:10,代码来源:vmTypes.cpp


示例13: ReadLong

void vmValType::StreamIn (std::istream& stream) {

    // Read vmValType from stream
    m_basicType     = (vmBasicValType) ReadLong (stream);
    m_arrayLevel    = ReadByte (stream);
    m_pointerLevel  = ReadByte (stream);
    m_byRef         = ReadByte (stream);
    for (int i = 0; i < VM_MAXDIMENSIONS; i++)
        m_arrayDims [i] = ReadLong (stream);
}
开发者ID:bmatthew1,项目名称:Basic4GL,代码行数:10,代码来源:vmTypes.cpp


示例14: WTRACE

void
SMsgDirG2UpdateExtendBase::UnpackExtended(void)
{
	WTRACE("SMsgDirG2UpdateExtendBase::UnpackExtended");
	WDBG_LL("SMsgDirG2UpdateExtendBase::UnpackExtended enableDataObjects=" << mEnableDataObjects << " enableACLs=" << mEnableACLs);
	mDataObjects.clear();
	mACLs.clear();

	if (mEnableDataObjects)
	{
		unsigned short aCt = ReadShort();
		WDBG_LL("SMsgDirG2UpdateExtendBase::UnpackExtended Reading " << aCt << " data objects.");

		for (int i=0; i < aCt; i++)
		{
			DataObject anObj;
			unsigned char aTypeLen = ReadByte();
			if (aTypeLen > 0)
				anObj.GetDataType().assign(reinterpret_cast<const unsigned char*>(ReadBytes(aTypeLen)), aTypeLen);

			unsigned short aDataLen = ReadShort();
			if (aDataLen > 0)
				anObj.GetData().assign(reinterpret_cast<const unsigned char*>(ReadBytes(aDataLen)), aDataLen);

			mDataObjects.insert(anObj);
		}
	}

	if (mEnableACLs)
	{
		unsigned short aCt = ReadShort();
		WDBG_LL("SMsgDirG2UpdateExtendBase::UnpackExtended Reading " << aCt << " ACLs.");

		for (int i=0; i < aCt; i++)
		{
			DirACL anACL;
			anACL.mType = static_cast<WONMsg::DirG2ACLType>(ReadByte());

			unsigned short aPermCt = ReadShort();
			for (int j=0; j < aPermCt; j++)
			{
				Permission aPerm;
				aPerm.mUserId      = ReadLong();
				aPerm.mCommunityId = ReadLong();
				aPerm.mTrustLevel  = ReadShort();
				anACL.mACL.insert(aPerm);
			}

			mACLs.push_back(anACL);
		}
	}
}
开发者ID:vgck,项目名称:opendr2,代码行数:52,代码来源:SMsgDirG2UpdateExtendBase.cpp


示例15: UnpackMess

void UnpackMess(char *player)
/* 
 * Takes all messages from a result and puts them in ``mdata??.dat''.
 * Since messages are of unpredictable length, the place and size of
 * all messages are given at the beginning of the file. In the result,
 * however places (of course?) differ. So the messages are
 * "moved". Also, a file ``mess??.dat'' with 0 outgoing messages is
 * created.
 */
{
  FILE *mess;
  unsigned long place=16,dump;
  unsigned short nomess;
  unsigned char *buf;
  int i,total=0,size;

  buf=rstremember+place;
  ReadLong(place,buf);
  place--; /* this sucks */
  buf=rstremember+place;
  ReadShort(nomess,buf);
  fprintf(stdout,"%3d messages found\n",nomess);

  ReadLong(place,buf); /* place where first message starts */
  buf-=4;
  place--; /* this sucks */
  for (i=0;i<nomess;i++) {
#ifdef test
    fprintf(stderr,"%i",i%10);
#endif
    ReadLong(dump,buf);
    buf-=4; /* only disadvantage of my own macro */
    dump-=(place-(2+6*nomess)); /* ``move'' message */
    WriteLong(dump,buf);
    ReadShort(size,buf);
    total+=size;
  }

  mess=OpenPlayerFile("mdata",player,"dat");
  fwrite(buf-(2+6*nomess),2+6*nomess,1,mess);
  fwrite(rstremember+place,total,1,mess);
  /* datsig not needed */
  fclose(mess);

  mess=OpenPlayerFile("mess",player,"dat");
  i=0;
  fwrite(&i,2,1,mess);
  fclose(mess);
} /* UnpackMess */
开发者ID:ldipenti,项目名称:GNOME-War-Pad,代码行数:49,代码来源:vp_unpack.c


示例16: ReadLong

void SMsgUsrPushedUserList::unpack_multiple_message_specific_data()
	{
	// Retrieve the data source id

	m_i_data_source_id = ReadLong();

	// Retrieve the data source specific status information

	m_data_source_specific_status = static_cast<WONMsg::ServerStatus>(static_cast<short>(ReadShort()));

	// Retrieve the issue number

	m_i_issue_number = ReadLong();

	// Retrieve the number of users found

	unsigned long number_of_user_objects = ReadLong();

	// Sanity check that the output user array has been set to a non-null value

	if (m_p_output_userarray_for_unpacking)
		{
		// Keep records of the indices of the beginning and end of the users for this message

		m_user_objects_begin = m_p_output_userarray_for_unpacking->size();

		m_user_objects_end = m_user_objects_begin + number_of_user_objects;

		// Retrieve each user, adding each user to the end of the output user array

		for (unsigned long counter = 0;
			 counter < number_of_user_objects;
			 counter++)
			{
			// Add a new user to the end of the array

			m_p_output_userarray_for_unpacking->push_back(UserUpdateObject());

			// Retrieve the user data

			m_p_output_userarray_for_unpacking->back().m_user.unpack_data(*this);

			// Retrieve the purpose

			m_p_output_userarray_for_unpacking->back().m_update_purpose = WONMsg::Purpose(ReadLong());
			}
		}
	}
开发者ID:SOLARIC,项目名称:world-opponent-network,代码行数:48,代码来源:SMsgUsrPushedUserList.cpp


示例17: MEndRep

void MEndRep() 
{
      aReg[2]=ReadLong(0x2804c);
      reg[5]=0;/*(gKeyDown!=0)<<4;*/
      
      QLsubr(ReadWord(0x152)+0x4000,2000000);
}
开发者ID:daveysaxt,项目名称:MacQL,代码行数:7,代码来源:QL_hardware.c


示例18: TTCOffsetTableOffset

int16 TTCOffsetTableOffset(
    /* 0 */ CONST unsigned char * puchSrcBuffer, /* input TTF or TTC buffer */
    /* 1 */ CONST unsigned long ulSrcBufferSize, /* size of input TTF or TTC buffer data */
    /* 6 */ CONST unsigned short usTTCIndex,    /* TTC Index, only used if TTC bit set */
            uint32 *pulOffsetTableOffset)
{
CONST_TTFACC_FILEBUFFERINFO InputBufferInfo;
int16 errCode = NO_ERROR;
TTC_HEADER TTCHeader;
uint16 usBytesRead;
uint32 ulOffset;

    InputBufferInfo.puchBuffer = puchSrcBuffer;
    InputBufferInfo.ulBufferSize = ulSrcBufferSize;
    InputBufferInfo.ulOffsetTableOffset = *pulOffsetTableOffset = 0;
    InputBufferInfo.lpfnReAllocate = NULL; /* can't reallocate input buffer */

    if ((errCode = ReadGeneric((TTFACC_FILEBUFFERINFO *) &InputBufferInfo, (uint8 *) &TTCHeader, SIZEOF_TTC_HEADER, TTC_HEADER_CONTROL, 0, &usBytesRead)) != NO_ERROR)
        return(errCode);
    ulOffset = usBytesRead;

    if (TTCHeader.TTCTag != TTC_LONG_TAG) /* this isn't a ttc */
        return ERR_NOT_TTC;  /* offset set correctly for ttf */

    if (usTTCIndex >= TTCHeader.DirectoryCount)
        return ERR_INVALID_TTC_INDEX;

    ulOffset += GetGenericSize(LONG_CONTROL) * usTTCIndex;
    if ((errCode = ReadLong((TTFACC_FILEBUFFERINFO *) &InputBufferInfo, pulOffsetTableOffset, ulOffset)) != NO_ERROR)
        return(errCode);

    return errCode;
}
开发者ID:krytht,项目名称:DotNetReferenceSource,代码行数:33,代码来源:ttfdelta.cpp


示例19: WTRACE

// SMsgDirG2ModifyService::Unpack
// Virtual method from SmallMessage.  Extracts data from message buffer.
void
SMsgDirG2ModifyService::Unpack(void)
{
	WTRACE("SMsgDirG2ModifyService::Unpack");
	SetKeyType(KT_SERVICE);
	SetExtended((GetMessageType() != WONMsg::DirG2ModifyService), (GetMessageType() == WONMsg::DirG2ModifyServiceEx));
	SMsgDirG2UpdateExtendBase::Unpack();

	if ((GetServiceType() != WONMsg::SmallDirServerG2) ||
	    ((GetMessageType() != WONMsg::DirG2ModifyService) &&
	     (GetMessageType() != WONMsg::DirG2ModifyServiceEx) &&
		 (GetMessageType() != WONMsg::DirG2ModifyServiceExObsolete)))
	{
		WDBG_AH("SMsgDirG2ModifyService::Unpack Not a DirG2ModifyService(Ex) message!");
		throw WONMsg::BadMsgException(*this, __LINE__, __FILE__,
		                              "Not a DirG2ModifyService(Ex) message.");
	}

	mEntityFlags = ReadByte();
	UnpackKey(*this);
	ReadWString(mNewName);

	unsigned char aLen = ReadByte();
	WDBG_LL("SMsgDirG2ModifyService::Unpack Read New Addr len=" << aLen);
	if (aLen > 0)
		mNewNetAddress.assign(reinterpret_cast<const unsigned char*>(ReadBytes(aLen)), aLen);

	ReadWString(mNewDisplayName);
	mNewLifespan = ReadLong();
	UnpackExtended();
	UnpackPeerData();
}
开发者ID:vgck,项目名称:opendr2,代码行数:34,代码来源:SMsgDirG2ModifyService.cpp


示例20: ReadString

void vmVariable::StreamIn (std::istream& stream) {
#ifdef STREAM_NAMES
    m_name = ReadString (stream);
#endif
    m_dataIndex = ReadLong (stream);
    m_type.StreamIn (stream);
}
开发者ID:bmatthew1,项目名称:LinB4GL,代码行数:7,代码来源:vmVariables.cpp



注:本文中的ReadLong函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ ReadMME函数代码示例发布时间:2022-05-30
下一篇:
C++ ReadLiquidTypeTableDBC函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap