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

C++ char_type函数代码示例

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

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



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

示例1: switch

void InsetMathChar::htmlize(HtmlStream & ms) const
{
	std::string entity;
	switch (char_) {
		case '<': entity = "&lt;"; break;
		case '>': entity = "&gt;"; break;
		case '&': entity = "&amp;"; break;
		case ' ': entity = "&nbsp;"; break;
		default: break;
	}
	
	bool have_entity = !entity.empty();
	
	if (ms.inText()) {
		if (have_entity)
			ms << from_ascii(entity);
		else
			ms.os().put(char_);
		return;
	}
	
	if (have_entity) {
		// an operator, so give some space
		ms << ' ' << from_ascii(entity) << ' ';
		return;
	}		

	if (isalpha(char_) || Encodings::isMathAlpha(char_))
		// we don't use MTag and ETag because we do not want the spacing
		ms << MTag("i") << char_type(char_) << ETag("i");
	else
		// an operator, so give some space
		ms << " " << char_type(char_) << " ";
}
开发者ID:rpavlik,项目名称:lyx-lucid-backport,代码行数:34,代码来源:InsetMathChar.cpp


示例2: exprt

string_constantt::string_constantt(const irep_idt &_value):
  exprt(ID_string_constant)
{
  set_value(_value);
  type()=array_typet();
  type().subtype()=char_type();
}
开发者ID:sarnold,项目名称:cbmc,代码行数:7,代码来源:string_constant.cpp


示例3: NS_RUNTIMEABORT

void
nsTSubstring_CharT::StripChars( const char_type* aChars, uint32_t aOffset )
  {
    if (aOffset >= uint32_t(mLength))
      return;

    if (!EnsureMutable()) // XXX do this lazily?
      NS_RUNTIMEABORT("OOM");

    // XXX(darin): this code should defer writing until necessary.

    char_type* to   = mData + aOffset;
    char_type* from = mData + aOffset;
    char_type* end  = mData + mLength;

    while (from < end)
      {
        char_type theChar = *from++;
        const char_type* test = aChars;

        for (; *test && *test != theChar; ++test);

        if (!*test) {
          // Not stripped, copy this char.
          *to++ = theChar;
        }
      }
    *to = char_type(0); // add the null
    mLength = to - mData;
  }
开发者ID:Tripleman,项目名称:mozilla-central,代码行数:30,代码来源:nsTSubstring.cpp


示例4: exprt

string_constantt::string_constantt():
  exprt(ID_string_constant)
{
  set_value(irep_idt());
  type()=typet(ID_array);
  type().subtype()=char_type();
}
开发者ID:ashokkelur,项目名称:CBMC-With-DSP-C,代码行数:7,代码来源:string_constant.cpp


示例5: main

int main(void)
{
	char input[10];
	char letter;
	int result;
	int char_check;

	while(1 == 1) {
		(void)printf("Enter letter, or non letter to quit: ");
		(void)fgets(input, sizeof(input), stdin);
		result = sscanf(input, "%c", &letter);

		if (result != 1) {
			break;
		}

		char_check = char_type(letter);
		if (char_check == 1) {
			(void)printf("You entered a vowel.\n");
		} else if (char_check == -1) {
			(void)printf("You entered a consonant.\n");
		} else {
			(void)printf("You did not enter a letter.  Bye!\n");
			break;
		}
	}

	return 0;
}
开发者ID:akydd,项目名称:practicalc,代码行数:29,代码来源:6.c


示例6: pimpl_

string16_t::string16_t( const char_type *str, std::size_t size) : pimpl_( 0)
{
    init();
    pimpl_->str_.reserve( size + 1);
    pimpl_->str_.assign( str, str + size);
    pimpl_->str_.push_back( char_type( 0));
}
开发者ID:elanifegnirf,项目名称:ramenlibs,代码行数:7,代码来源:string16.cpp


示例7: copy

void
nsACString::StripChars(const char *aSet)
{
  nsCString copy(*this);

  const char_type *source, *sourceEnd;
  copy.BeginReading(&source, &sourceEnd);

  char_type *dest;
  BeginWriting(&dest);
  if (!dest)
    return;

  char_type *curDest = dest;

  for (; source < sourceEnd; ++source) {
    const char *test;
    for (test = aSet; *test; ++test) {
      if (*source == char_type(*test))
        break;
    }

    if (!*test) {
      // not stripped, copy this char
      *curDest = *source;
      ++curDest;
    }
  }

  SetLength(curDest - dest);
}
开发者ID:mikeaich,项目名称:releases-mozilla-central,代码行数:31,代码来源:nsStringAPI.cpp


示例8:

_LIBCPP_CONSTEXPR_AFTER_CXX11 size_t
constexpr_char_traits<_CharT>::length(const char_type* __s)
{
    size_t __len = 0;
    for (; !eq(*__s, char_type(0)); ++__s)
        ++__len;
    return __len;
}
开发者ID:0xDEC0DE8,项目名称:ndk,代码行数:8,代码来源:constexpr_char_traits.hpp


示例9: function_to_call

code_function_callt function_to_call(
  symbol_tablet &symbol_table,
  const irep_idt &id,
  const irep_idt &argument)
{
  // already there?

  symbol_tablet::symbolst::const_iterator s_it=
    symbol_table.symbols.find(id);

  if(s_it==symbol_table.symbols.end())
  {
    // not there
    pointer_typet p(char_type());
    p.subtype().set(ID_C_constant, true);

    code_typet function_type;
    function_type.return_type()=empty_typet();
    function_type.parameters().push_back(
      code_typet::parametert(p));

    symbolt new_symbol;
    new_symbol.name=id;
    new_symbol.base_name=id;
    new_symbol.type=function_type;

    symbol_table.move(new_symbol);

    s_it=symbol_table.symbols.find(id);
    assert(s_it!=symbol_table.symbols.end());
  }

  // signature is expected to be
  // (type *) -> ...
  if(s_it->second.type.id()!=ID_code ||
     to_code_type(s_it->second.type).parameters().size()!=1 ||
     to_code_type(s_it->second.type).parameters()[0].type().id()!=ID_pointer)
  {
    std::string error="function `"+id2string(id)+"' has wrong signature";
    throw error;
  }

  string_constantt function_id_string(argument);

  code_function_callt call;
  call.lhs().make_nil();
  call.function()=
    symbol_exprt(s_it->second.name, s_it->second.type);
  call.arguments().resize(1);
  call.arguments()[0]=
    typecast_exprt(
      address_of_exprt(
        index_exprt(
          function_id_string, from_integer(0, index_type()))),
      to_code_type(s_it->second.type).parameters()[0].type());

  return call;
}
开发者ID:dcattaruzza,项目名称:cbmc,代码行数:58,代码来源:function.cpp


示例10: main

main()
{
  char ch;
			/* get a character from the keyboard 	*/
  printf(" Please enter a charcater => ");
  ch = getc(stdin);

  char_type(ch);	/* Figure out the character type 	*/
}
开发者ID:DouglasAllen,项目名称:C-Programming-Refference,代码行数:9,代码来源:is_examp.c


示例11: theFontMetrics

void InsetSpecialChar::metrics(MetricsInfo & mi, Dimension & dim) const
{
	frontend::FontMetrics const & fm =
		theFontMetrics(mi.base.font);
	dim.asc = fm.maxAscent();
	dim.des = 0;
	dim.wid = 0;

	docstring s;
	switch (kind_) {
		case ALLOWBREAK:
			dim.asc = fm.xHeight();
			dim.des = fm.descent('g');
			dim.wid = fm.em() / 8;
			break;
		case LIGATURE_BREAK:
			s = from_ascii("|");
			break;
		case END_OF_SENTENCE:
			s = from_ascii(".");
			break;
		case LDOTS:
			s = from_ascii(". . .");
			break;
		case MENU_SEPARATOR:
			// ▹  U+25B9 WHITE RIGHT-POINTING SMALL TRIANGLE
			// There is a \thinspace on each side of the triangle
			dim.wid = 2 * fm.em() / 6 + fm.width(char_type(0x25B9));
			break;
		case HYPHENATION:
			dim.wid = fm.width(from_ascii("-"));
			if (dim.wid > 5)
				dim.wid -= 2; // to make it look shorter
			break;
		case SLASH:
			s = from_ascii("/");
			dim.des = fm.descent(s[0]);
			break;
		case NOBREAKDASH:
			s = from_ascii("-");
			break;
		case PHRASE_LYX:
		case PHRASE_TEX:
		case PHRASE_LATEX2E:
		case PHRASE_LATEX:
			dim.asc = fm.maxAscent();
			dim.des = fm.maxDescent();
			frontend::NullPainter np;
			PainterInfo pi(mi.base.bv, np);
			pi.base.font = mi.base.font;
			drawLogo(pi, dim.wid, 0, kind_);
			break;
	}
	if (dim.wid == 0)
		dim.wid = fm.width(s);
}
开发者ID:cburschka,项目名称:lyx,代码行数:56,代码来源:InsetSpecialChar.cpp


示例12: char_type

hdf5_oprimitive::write_hdf5_dataset
(
    signed char const* t,
    std::size_t data_count,
    std::size_t object_number
)
{
    hdf5_datatype char_type(H5T_NATIVE_SCHAR);
    write_dataset_basic(t, data_count, char_type, object_number);
}
开发者ID:bingzhang00,项目名称:serialization,代码行数:10,代码来源:hdf5_oprimitive.cpp


示例13: make_expr_1

void make_expr_1( MethodWriter &mw, const String &op ) {
    // resulting type
    String op_type;
    op_type << "Op_" << op << '_' << char_type( mw.get_type( 0 )->constructor );
    mw.add_type_decl( op_type );

    // default behavior -> op( a, b, ... )
    mw.n << "Type *type = &metil_type_bas_" << op_type << ";";
    mw.ret() << "MO( NEW( Owcp<1>, type, " << mw.arg[ 0 ] << " ), type );";
}
开发者ID:hleclerc,项目名称:Metil,代码行数:10,代码来源:TypeConstructor_SymbolicExpression.cpp


示例14: char_type

hdf5_iprimitive::read_hdf5_dataset
(
    signed char* t,
    std::size_t data_count,
    std::size_t object_number
)
{
    hdf5_datatype char_type(H5T_NATIVE_SCHAR);
    read_dataset_basic(t, data_count, char_type, object_number);
}
开发者ID:warn-naught,项目名称:serialization,代码行数:10,代码来源:hdf5_iprimitive.cpp


示例15: assert

void string16_t::push_back( char_type c)
{
    assert( pimpl_);

    if( !pimpl_->str_.empty())
        pimpl_->str_.pop_back();

    pimpl_->str_.push_back( c);
    pimpl_->str_.push_back( char_type( 0));
}
开发者ID:elanifegnirf,项目名称:ramenlibs,代码行数:10,代码来源:string16.cpp


示例16: char_type

BOOST_ARCHIVE_OR_WARCHIVE_DECL void
hdf5_oprimitive::write_hdf5_dataset
(
    unsigned char const* t,
    std::size_t data_count,
    std::size_t object_number
)
{
    hdf5_datatype char_type(H5T_NATIVE_UCHAR);
    write_dataset_basic(t, data_count, char_type, object_number);
}
开发者ID:warn-naught,项目名称:serialization,代码行数:11,代码来源:hdf5_oprimitive.cpp


示例17: char_type

bool
nsTSubstring_CharT::ReplacePrepInternal(index_type cutStart, size_type cutLen,
                                        size_type fragLen, size_type newLen)
  {
    char_type* oldData;
    uint32_t oldFlags;
    if (!MutatePrep(newLen, &oldData, &oldFlags))
      return false; // out-of-memory

    if (oldData)
      {
        // determine whether or not we need to copy part of the old string
        // over to the new string.

        if (cutStart > 0)
          {
            // copy prefix from old string
            char_traits::copy(mData, oldData, cutStart);
          }

        if (cutStart + cutLen < mLength)
          {
            // copy suffix from old string to new offset
            size_type from = cutStart + cutLen;
            size_type fromLen = mLength - from;
            uint32_t to = cutStart + fragLen;
            char_traits::copy(mData + to, oldData + from, fromLen);
          }

        ::ReleaseData(oldData, oldFlags);
      }
    else
      {
        // original data remains intact

        // determine whether or not we need to move part of the existing string
        // to make room for the requested hole.
        if (fragLen != cutLen && cutStart + cutLen < mLength)
          {
            uint32_t from = cutStart + cutLen;
            uint32_t fromLen = mLength - from;
            uint32_t to = cutStart + fragLen;
            char_traits::move(mData + to, mData + from, fromLen);
          }
      }

    // add null terminator (mutable mData always has room for the null-
    // terminator).
    mData[newLen] = char_type(0);
    mLength = newLen;

    return true;
  }
开发者ID:Tripleman,项目名称:mozilla-central,代码行数:53,代码来源:nsTSubstring.cpp


示例18: SetDataFlags

PRBool
nsTSubstring_CharT::SetCapacity( size_type capacity )
  {
    // capacity does not include room for the terminating null char

    // if our capacity is reduced to zero, then free our buffer.
    if (capacity == 0)
      {
        ::ReleaseData(mData, mFlags);
        mData = char_traits::sEmptyBuffer;
        mLength = 0;
        SetDataFlags(F_TERMINATED);
      }
    else
      {
        char_type* oldData;
        PRUint32 oldFlags;
        if (!MutatePrep(capacity, &oldData, &oldFlags))
          return PR_FALSE; // out-of-memory

        // compute new string length
        size_type newLen = NS_MIN(mLength, capacity);

        if (oldData)
          {
            // preserve old data
            if (mLength > 0)
              char_traits::copy(mData, oldData, newLen);

            ::ReleaseData(oldData, oldFlags);
          }

        // adjust mLength if our buffer shrunk down in size
        if (newLen < mLength)
          mLength = newLen;

        // always null-terminate here, even if the buffer got longer.  this is
        // for backwards compat with the old string implementation.
        mData[capacity] = char_type(0);
      }

    return PR_TRUE;
  }
开发者ID:mbrubeck,项目名称:mozilla-central,代码行数:43,代码来源:nsTSubstring.cpp


示例19: EnsureMutable

void
nsTSubstring_CharT::StripChar( char_type aChar, PRInt32 aOffset )
  {
    if (mLength == 0 || aOffset >= PRInt32(mLength))
      return;

    EnsureMutable(); // XXX do this lazily?

    // XXX(darin): this code should defer writing until necessary.

    char_type* to   = mData + aOffset;
    char_type* from = mData + aOffset;
    char_type* end  = mData + mLength;

    while (from < end)
      {
        char_type theChar = *from++;
        if (aChar != theChar)
          *to++ = theChar;
      }
    *to = char_type(0); // add the null
    mLength = to - mData;
  }
开发者ID:mbrubeck,项目名称:mozilla-central,代码行数:23,代码来源:nsTSubstring.cpp


示例20: raw_msg_stream

void
message::decorate_message(const string_type& decoration,
                          const string_type& in_message,
                                string_type& out_message) const
{
    ostream_type    predecorated_message;
    ostream_type    decorated_message;
    scm::size_t     decoration_indent = decoration.size();
    stream_type     raw_msg_stream(in_message);
    string_type     raw_msg_line;
    bool            indent_decoration = false;
    scm::size_t     log_indention_width = sending_logger().indent_level() * sending_logger().indent_width();

    while (std::getline(raw_msg_stream, raw_msg_line)) {
        if (   (0 < decoration_indent)
            && indent_decoration
            && !raw_msg_line.empty())
        {
            std::fill_n(std::ostreambuf_iterator<char_type>(predecorated_message.rdbuf()),
                        decoration_indent,
                        char_type(' '));
        }
        if (  (0 < log_indention_width)
            && !raw_msg_line.empty())
        {
            std::fill_n(std::ostreambuf_iterator<char_type>(predecorated_message.rdbuf()),
                        log_indention_width,
                        sending_logger().indent_fill_char());
        }
        predecorated_message << raw_msg_line << std::endl;
        indent_decoration = true;
    }
    _postdec_message = predecorated_message.str();
    decorated_message << decoration << predecorated_message.str();
    decorated_message.str().swap(out_message);
    //out_message.swap(decorated_message.str());
}
开发者ID:4og,项目名称:schism,代码行数:37,代码来源:message.cpp



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
C++ charging_parameter_to_value函数代码示例发布时间:2022-05-30
下一篇:
C++ char2int函数代码示例发布时间: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