当前位置: 首页>>代码示例>>C++>>正文


C++ PSIn::GetCh方法代码示例

本文整理汇总了C++中PSIn::GetCh方法的典型用法代码示例。如果您正苦于以下问题:C++ PSIn::GetCh方法的具体用法?C++ PSIn::GetCh怎么用?C++ PSIn::GetCh使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PSIn的用法示例。


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

示例1: Sentencize

///////////////////////////////
// Tokenizer-Utils
void TTokenizerUtil::Sentencize(const PSIn& SIn, TStrV& Sentences, const bool& SplitNewLineP) {
	TChA SentenceBuf;
	int c;
	while (!SIn->Eof()) {
		c = SIn->GetCh();
		switch (c) {
			case '\r':
			case '\n':	{
				if (!SplitNewLineP) {
					SentenceBuf += ' ';
					break;
				}
			}
			case '"' :
			case '.' :
			case '!' :
			case ':' :
			case ';' :
			case '?' :
			case '\t': {
				if (SentenceBuf.Len() > 2) {
					Sentences.Add(SentenceBuf);
					SentenceBuf.Clr();
				}
				break;
			}
			default: 
				SentenceBuf += c;
				break;
		}
	}
	if (SentenceBuf.Len() > 0) {
		Sentences.Add(SentenceBuf);
	}	
}
开发者ID:Austindeadhead,项目名称:qminer,代码行数:37,代码来源:tokenizer.cpp

示例2: GetFirstCh

char THttpLx::GetFirstCh(){
  if (SIn->Eof()){
    if (AtEof){throw THttpEx(heUnexpectedEof);}
    AtEof=true; return 0;
  } else {
    Ch=SIn->GetCh(); return Ch;
  }
}
开发者ID:AlertProject,项目名称:Text-processing-bundle,代码行数:8,代码来源:http.cpp

示例3: GetMultiByteInt

uint TWbmp::GetMultiByteInt(const PSIn& SIn){
  uint Val=0; TB8Set BSet;
  do {
    BSet=uchar(SIn->GetCh());
    Val=Val*128+BSet.GetInt(0, 6);
  } while (BSet.In(7));
  return Val;
}
开发者ID:Accio,项目名称:snap,代码行数:8,代码来源:wbmp.cpp

示例4: LoadWbmp

PWbmp TWbmp::LoadWbmp(const PSIn& SIn){
  // read header
  uint TypeField=GetMultiByteInt(SIn);
  if (TypeField!=0){TExcept::Throw("Invalid WBMP TypeField.");}
  TB8Set FixHeaderField=uchar(SIn->GetCh());
  if (FixHeaderField.In(7)){
    GetMultiByteInt(SIn);} // ExtFields
  int Width=GetMultiByteInt(SIn);
  int Height=GetMultiByteInt(SIn);
  // create wbmp
  PWbmp Wbmp=TWbmp::New(Width, Height);
  // read & fill bitmap
  for (int Y=0; Y<Height; Y++){
    int X=0; TB8Set BSet;
    while (X<Width){
      if (X%8==0){BSet=uchar(SIn->GetCh());}
      Wbmp->PutPxVal(X, Y, BSet.In(7-X%8));
      X++;
    }
  }
  return Wbmp;
}
开发者ID:Accio,项目名称:snap,代码行数:22,代码来源:wbmp.cpp

示例5: GetCh

char THttpLx::GetCh(){
  if (EofChPrS.Empty()){
    if (SIn->Eof()){
      if (AtEof){throw THttpEx(heUnexpectedEof);}
      AtEof=true; SfMem+=Ch; Ch=TCh::NullCh; return Ch;
    } else {
      SfMem+=Ch; Ch=SIn->GetCh(); return Ch;
    }
  } else {
    SfMem+=Ch;
    AtEof=EofChPrS.Top().Val1; Ch=EofChPrS.Top().Val2; EofChPrS.Pop();
    return Ch;
  }
}
开发者ID:AlertProject,项目名称:Text-processing-bundle,代码行数:14,代码来源:http.cpp

示例6: Paragraphize

void TTokenizerUtil::Paragraphize(const PSIn& SIn, TStrV& Paragraphs) {
	TChA ParagraphBuf;
	int c;
	bool wasSpace = false;
	while (!SIn->Eof()) {
		c = SIn->GetCh();
		// two consecutive spaces signal a new paragraph
		if (c == ' ' || c == '\t' || c == '\n') {
			if (wasSpace) {
				Paragraphs.Add(ParagraphBuf);
				ParagraphBuf.Clr();
				continue;
			}
			wasSpace = true;
		} else {
			wasSpace = false;
		}
		ParagraphBuf += c;
	}
	if (ParagraphBuf.Len() > 0) {
		Paragraphs.Add(ParagraphBuf);
	}
}
开发者ID:AlertProject,项目名称:Text-processing-bundle,代码行数:23,代码来源:tokenizer.cpp


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