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

C++ choice函数代码示例

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

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



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

示例1: chgroup

static int chgroup(void) {
  int p=notAllowed,c;
  for(;;) {
    switch(sym) {
    case SYM_CHR: chkrch(val);
    case SYM_ESC: c=val; getsym();
      if(sym==SYM_CHR&&val=='-') {
	if(regex[ri]=='[') {
	  p=choice(p,newChar(c));
	  goto END_OF_GROUP;
	} else {
	  getsym();
	  switch(sym) {
	  case SYM_CHR: chkrch(val);
	  case SYM_ESC: p=choice(p,newRange(c,val)); getsym(); break;
	  default: error(RX_ER_BADCH); getsym(); break;
	  }
	}
      } else {
	p=choice(p,newChar(c));
      }
      break;
    case SYM_CLS: p=choice(p,cls(val)); getsym(); break;
    case SYM_END: error(RX_ER_NORSQ); goto END_OF_GROUP;
    default: assert(0);
    }
    if(sym==SYM_CHR&&(val==']'||val=='-')) goto END_OF_GROUP;
  }
  END_OF_GROUP:;
  return p;
}
开发者ID:EmanAliHassan,项目名称:csl-validator.js,代码行数:31,代码来源:rx.c


示例2: help

void help()
{
int helpchoice;
int secondchoice;
int done = FALSE;
do
{
helpchoice = choice(5,helpindex);
switch (helpchoice)
{
case 0 : done = TRUE;break;
case 1 : secondchoice = choice(4,layout);
	 switch (secondchoice)
	 {
	 case 0 : break;
	 case 1 : showhelp("Help : General Layout",layout_1);break;
	 case 2 : showhelp("Help : Screen 1",layout_2);break;
	 case 3 : showhelp("Help : Screen 2",layout_3);break;
	 case 4 : showhelp("Help : Screen 3",layout_4);break;
	 }
	 break;
case 2 : secondchoice = choice(3,entering);
	 switch (secondchoice)
	 {
	 case 0 : break;
	 case 1 : showhelp("Help : Movement",entering_1);break;
	 case 2 : showhelp("Help : Recalculation",entering_2);break;
	 case 3 : showhelp("Help : Editing",entering_3);break;
	 }
	 break;
case 3 : secondchoice = choosefunction();
	 switch (secondchoice)
	 {
	 case 0 : break;
	 case F01 : showhelp("Help : F1",keys_1);break;
	 case F02 : showhelp("Help : F2",keys_2);break;
	 case F03 : showhelp("Help : F3",keys_3);break;
	 case F04 : showhelp("Help : F4",keys_4);break;
	 case F05 : showhelp("Help : F5",keys_5);break;
	 case F06 : showhelp("Help : F6",keys_6);break;
	 case F07 : showhelp("Help : F7",keys_7);break;
	 case F08 : showhelp("Help : F8",keys_8);break;
	 case F09 : showhelp("Help : F9",keys_9);break;
         case F10: showhelp("Help : F10",keys_10);break;
	 }
	 break;
case 4 : secondchoice = choice(2,graphing);
	 switch (secondchoice)
	 {
	 case 0 : break;
	 case 1 : showhelp("Help : Price Graphs",graphing_1);break;
	 case 2 : showhelp("Help : Time Graphs",graphing_2);break;
	 }
	 break;
case 5 : showhelp("Help : Notice to Users",notice); break;
}
} while (!done);
}
开发者ID:tridge,项目名称:junkcode,代码行数:58,代码来源:opthelp2.c


示例3: permutation

void permutation(WORDSIZE* state){
    WORDSIZE a, b, c, d;
    unsigned int index;
    load_state(state, a, b, c, d);    
    for (index = 0; index < ROUNDS; index++){
        a ^= index;
        a ^= choice(f(b), f(c), f(d)); b ^= choice(f(c), f(d), f(a));
        c ^= choice(f(d), f(a), f(b)); d ^= choice(f(a), f(b), f(c));}
    store_state(state, a, b, c, d);}
开发者ID:erose1337,项目名称:crypto,代码行数:9,代码来源:permutation.c


示例4: choice

static int choice(int p1,int p2) {
  if(P_IS(p1,P_NOT_ALLOWED)) return p2;
  if(P_IS(p2,P_NOT_ALLOWED)) return p1;
  if(P_IS(p2,P_CHOICE)) {
    int p21,p22; Choice(p2,p21,p22);
    p1=choice(p1,p21); return choice(p1,p22);
  }
  if(samechoice(p1,p2)) return p1;
  if(nullable(p1) && (P_IS(p2,P_EMPTY))) return p1;
  if(nullable(p2) && (P_IS(p1,P_EMPTY))) return p2;
  return newChoice(p1,p2);
}
开发者ID:EmanAliHassan,项目名称:csl-validator.js,代码行数:12,代码来源:rx.c


示例5: piece

static int piece(void) {
  int p;
  p=atom();
  if(sym==SYM_CHR) {
    switch(val) {
    case '{': getsym(); p=quantifier(p); chk_get('}',RX_ER_NOLCU); break;
    case '?': getsym(); p=choice(empty,p); break;
    case '*': getsym(); p=choice(empty,one_or_more(p)); break;
    case '+': getsym(); p=one_or_more(p); break;
    default: break;
    }
  }
  return p;
}
开发者ID:EmanAliHassan,项目名称:csl-validator.js,代码行数:14,代码来源:rx.c


示例6: choice

//////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////
/// Choice of a variant
void ChoiceCreate::on_next_choice_clicked()
{
  if (ui->newContact->isChecked())
    {
      emit choice(QString("newContact"));
      this->close();
    }

  if (ui->newGroup->isChecked())
    {
      emit choice(QString("newGroup"));
      this->close();
    }
}
开发者ID:MarioCode,项目名称:Chat,代码行数:17,代码来源:choicecreate.cpp


示例7: solve

/* Attempt to solve 'board'; return 0 on success else -1 on error.
 *
 * The solution process attempts to fill-in deterministically as
 * much of the board as possible. Once that is no longer possible,
 * need to choose a square to fill in.
 */
static
int
solve( void )
{
    int idx;

    rb->yield();

    while( 1 )
    {
        if( 0 == deterministic( ) )
        {
            /* Solved, make a new choice, or rewind a previous choice */
            idx = choice( );
            if( -1 == idx )
                return 0;
            else
            if( ( idx < 0 || -1 == choose( idx, 1 ) ) && -1 == backtrack( ) )
                return -1;
        }
        else /* rewind to a previous choice */
        if( -1 == backtrack( ) )
            return -1;
    }
    return -1;
}
开发者ID:BurntBrunch,项目名称:rockbox-fft,代码行数:32,代码来源:generator.c


示例8: ReaderCreate

/**
 * @brief Create Reader
 */
Reader *
ReaderCreate(char *type)
{
	const char *keys[] =
	{
		"BINARY",
		"FIXED",	/* alias for backward compatibility. */
		"CSV",
		"TUPLE",
		"FUNCTION",
	};
	const ParserCreate values[] =
	{
		CreateBinaryParser,
		CreateBinaryParser,
		CreateCSVParser,
		CreateTupleParser,
		CreateFunctionParser,
	};

	Reader	   *self;

	/* default of type is CSV */
	if (type == NULL)
		type = "CSV";

	self = palloc0(sizeof(Reader));
	self->max_parse_errors = -2;
	self->limit = INT64_MAX;
	self->checker.encoding = -1;

	self->parser = values[choice("TYPE", type, keys, lengthof(keys))]();

	return self;
}
开发者ID:gatehouse,项目名称:pg_bulkload,代码行数:38,代码来源:reader.c


示例9: choice

void wxExEx::MacroStartRecording(const wxString& macro)
{
  if (!m_IsActive)
  {
    return;
  }
  
  wxString choice(macro);
  
  if (choice.empty())
  {
    wxTextEntryDialog dlg(m_STC,
      _("Input") + ":",
      _("Enter Macro"),
      m_Macros.GetMacro());
  
    if (dlg.ShowModal() != wxID_OK)
    {
      return;
    }
    
    choice = dlg.GetValue();
  }
  
  m_Macros.StartRecording(choice);
}
开发者ID:Emmavw,项目名称:wxExtension,代码行数:26,代码来源:ex.cpp


示例10: choicePlaylists

int choicePlaylists(struct playLists arrPlaylist[20]){
    system("cls");
    int red = FOREGROUND_RED | FOREGROUND_INTENSITY;
    int aqua = FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_INTENSITY;
    int i, numberPlaylists = 0, pointPl = 0, lll = 0;
    format(2, 0, aqua);
    printf("Your playlists");
    for(i = 0; i < 20; i++){
        if(strcmp(arrPlaylist[i].namelist, "\0") != 0){
            numberPlaylists++;
            if(i == 0)
                format(0, 2*numberPlaylists, red);
            else
                format(0, 2*numberPlaylists, 7);
            printf("%s", arrPlaylist[i].namelist);
        }
    }
    while(lll == 0){
        switch(getch()){
        case 72: pointPl--;
            break;
        case 80: pointPl++;
            break;
        case 13: lll = 1;
            break;
        case 8:
            return choice(0);
        }
        outPlaylists(numberPlaylists, arrPlaylist, pointPl);
    }
    menuPlaylist(arrPlaylist, pointPl);
}
开发者ID:Nastya67,项目名称:ForStudy,代码行数:32,代码来源:3.0.c


示例11: get_global_variable

static void get_global_variable(persist_context &ctx, const vconfig &pcfg)
{
	std::string global = pcfg["from_global"];
	std::string local = pcfg["to_local"];
	config::attribute_value pcfg_side = pcfg["side"];
	const int side = pcfg_side.to_int(resources::controller->current_side());
	persist_choice choice(ctx, global, side);
	config cfg = mp_sync::get_user_choice("global_variable",choice,side).child("variables");
	try
	{
		if (cfg) {
			size_t arrsize = cfg.child_count(global);
			if (arrsize == 0) {
				resources::gamedata->set_variable(local,cfg[global]);
			} else {
				resources::gamedata->clear_variable(local);
				for (size_t i = 0; i < arrsize; i++)
					resources::gamedata->add_variable_cfg(local,cfg.child(global,i));
			}
		} else {
			resources::gamedata->set_variable(local,"");
		}
	}
	catch(const invalid_variablename_exception&)
	{
		ERR_PERSIST << "cannot store global variable into invalid variablename " << local << std::endl;
	}
}
开发者ID:kencheng,项目名称:wesnoth,代码行数:28,代码来源:persist_var.cpp


示例12: waitForKeypress

Action SDLKeyboardAgent::act() {
  if (manual_control) {
      return waitForKeypress();
  } 
  else // Default to random agent 
    return choice(&available_actions);
}
开发者ID:10sun,项目名称:DRL-AI,代码行数:7,代码来源:SDLKeyboardAgent.cpp


示例13: quantifier

static int quantifier(int p0) {
  int p=empty,n,n0;
  n=n0=number();
  while(n--) p=group(p,p0);
  if(sym==SYM_CHR) {
    if(val==',') {
      getsym();
      if(sym==SYM_CHR && val=='}') {
	p=group(p,choice(empty,one_or_more(p0)));
      } else {
	n=number()-n0; if(n<0) {error(RX_ER_DNUOB); n=0;}
	while(n--) p=group(p,choice(empty,p0));
      }
    }
  } else error(RX_ER_NODGT);
  return p;
}
开发者ID:EmanAliHassan,项目名称:csl-validator.js,代码行数:17,代码来源:rx.c


示例14: expression

static int expression(void) {
  int p;
  p=branch();
  while(sym==SYM_CHR&&val=='|') {
    getsym();
    p=choice(p,branch());
  }
  return p;
}
开发者ID:EmanAliHassan,项目名称:csl-validator.js,代码行数:9,代码来源:rx.c


示例15: menu

int menu(int t){
void choice(char );
void colorstring(char s[],int t);
if(t==0){
textbackground(BLACK);
textcolor(LIGHTBLUE);
cprintf("���������������������������"); textcolor(LIGHTGRAY); cprintf("�["); textcolor(DARKGRAY); cprintf("MAIN"); textcolor(LIGHTGRAY); cprintf("]�"); textcolor(BLUE); cprintf("���������������������������"); printf("\n");
choice('E');
colorstring("Enter the dome.",1); printf("\n");
choice('C');
colorstring("View Unit.",1); printf("\n");
choice('S');
colorstring("Send Messages.",1); printf("\n");
choice('R');
colorstring("Read Messages.",1); printf("\n");
choice('B');
colorstring("Bulletins.",1); printf("\n");
choice('V');
colorstring("View Scores.",1); printf("\n");
choice('P');
colorstring("Change User Settings.",1); printf("\n");
choice('I');
colorstring("Instructions",1); printf("\n");
choice('Q');
colorstring("Quit the game!",1); printf("\n");



textcolor(LIGHTBLUE);
cprintf("�������������������������������"); textcolor(BLUE); cprintf("�������������������������������"); printf("\n");
}


if(t==96){
textbackground(BLACK);
textcolor(LIGHTBLUE);
cprintf("���������������������������"); textcolor(LIGHTGRAY); cprintf("�[");
}

if(t==97){
textcolor(LIGHTGRAY); cprintf("]�"); textcolor(BLUE); cprintf("���������������������������"); printf("\n");
}
if(t==98){
textcolor(LIGHTBLUE);
cprintf("�������������������������������"); textcolor(BLUE); cprintf("�������������������������������"); printf("\n");
}

return 0;
}
开发者ID:azilber,项目名称:1980s,代码行数:49,代码来源:INSTALL.CPP


示例16: loop1

PrologLexer::PrologLexer()
{

    lexer.rules[Prolog::Spacing] = loop1(charOf(" \t\n\r"));
    lexer.rules[Prolog::LParen] = str("(");
    lexer.rules[Prolog::RParen] = str(")");
    lexer.rules[Prolog::LBracket] = str("[");
    lexer.rules[Prolog::RBracket] = str("]");
    lexer.rules[Prolog::OnlyIf] = str(":-");
    lexer.rules[Prolog::Eq] = str("=");
    /*
    lexer.rules[Prolog::Lt] = str("<");
    lexer.rules[Prolog::Gt] = str(">");
    lexer.rules[Prolog::Le] = str("<=");
    lexer.rules[Prolog::Ge] = str(">=");
    lexer.rules[Prolog::Ne] = str("<>");
    */
    lexer.rules[Prolog::Dot] = str(".");
    lexer.rules[Prolog::Comma] = str(",");
    lexer.rules[Prolog::Semi] = str(";");
    lexer.rules[Prolog::Bar] = str("|");
    lexer.rules[Prolog::DomainsKw] = str("domains");
    lexer.rules[Prolog::PredicatesKw] = str("predicates");
    lexer.rules[Prolog::ClausesKw] = str("clauses");
    lexer.rules[Prolog::AssertKw] = str("assert");

    lexer.rules[Prolog::Str] = seq(str("\""),
                                   loop(anyBut(choice(str("\""), str("\n")))),
                                   str("\""));

    shared_ptr<RegExp> digit = charIs([](QChar c) {
        return c.isDigit();
    },"<digit>");
    shared_ptr<RegExp> letter = charIs([](QChar c) {
        return c.isLetter();
    }, "<letter>");
    shared_ptr<RegExp> smallLetter = charIs([](QChar c) {
        return c.isLower();
    }, "<lowercase>");
    shared_ptr<RegExp> capitalLetter = charIs([](QChar c) {
        return c.isUpper();
    }, "<uppercase>");
    shared_ptr<RegExp> alpha = charIs([](QChar c) {
        return c.isLetterOrNumber();
    },"<alphanumeric>");
    shared_ptr<RegExp> symbol = charOf("+-/*<>=");
    shared_ptr<RegExp> digits = seq(loop1(digit), checkNo(letter));
    shared_ptr<RegExp> smallLetterOrSymbol = choice(smallLetter, symbol);
    shared_ptr<RegExp> alphaOrUnderscore = choice(alpha, str("_"));
    shared_ptr<RegExp> alphaOrSymbol= choice(alpha, symbol);

    lexer.rules[Prolog::Num] = seq(digits,
                                   optional(seq(str("."), digits)));

    lexer.rules[Prolog::Symbol] = seq(smallLetterOrSymbol, loop(choice(digit, alphaOrSymbol)));
    lexer.rules[Prolog::Variable] = seq(choice(capitalLetter, str("_")),
                                        loop(choice(digit, alphaOrUnderscore)));

}
开发者ID:samiz,项目名称:smallprolog,代码行数:59,代码来源:prologlexer.cpp


示例17: ymove

int ymove(int a)
{
	int o,b;
	while(1)
	{
		b=getkey();
		if(b==77)
		{
			++a;
			system("cls");
			for(o=1;o<=12;o++)
			choice(a,o);
			gotoxy(0,0);
		}
		else if(b==75)
		{
			--a;
			system("cls");
			for(o=1;o<=12;o++)
			choice(a,o);
			gotoxy(0,0);
		}
		else if(b==72)
		{
			a+=10;
			system("cls");
			for(o=1;o<=12;o++)
			choice(a,o);
			gotoxy(0,0);
		}
		else if(b==80)
		{
			a=a-10;
			system("cls");
			for(o=1;o<=12;o++)
			choice(a,o);
			gotoxy(0,0);
		}
		else if(b==SPACE)
		main();
		else
		return 0;
	}
}
开发者ID:mightSagar,项目名称:Calendar,代码行数:44,代码来源:calendar.c


示例18: main

int main()
{
	char x,b;
	int a,o;
	system("cls");
	printf("What type of Calendar you want to see...!!!\n\n");
	printf("Press 'Y' for Yearly or Press 'M' for Monthly\n\n");
	printf("For Instructions press 'I'\n\n");
	printf("To exit press 'E'\n\n");
	x=getch();
	if(x=='M'||x=='m')
	{
		printf("\t\t::MONTHLY::");
		printf("\n\nEnter a year : ");
		scanf("%d",&a);
		printf("\nEnter the number corresponding to a month: ");
		scanf("%d",&o);
		system("cls");
		choice(a,o);
		gotoxy(0,0);
		mmove(a,o);
	}
	else if(x=='Y'||x=='y')
	{
		printf("\t\t::YEARLY::");
		printf("\n\nEnter a year after 1800 : ");
		scanf("%d",&a);
		system("cls");
		for(o=1;o<=12;o++)
		choice(a,o);
		gotoxy(0,0);
		ymove(a);
	}
	else if(x=='i'||x=='I')
		instr();
	else if(x=='e'||x=='E')
		exit(1);
	else
		printf("Wrong Input...!!!");
	printf("\n\n");
	return 0;
}
开发者ID:mightSagar,项目名称:Calendar,代码行数:42,代码来源:calendar.c


示例19: statement

void statement()
{
	enreg dreg;
	bool isjumpn;
	tokattr *pair;
	level++;
	trace("statement");
	switch(current.token)
	{
		case rd:		match(rd);
						genread(true);
						break;	
		case wr:		match(wr);
						genwrite(true);
						break;	
		case alu:		match(alu);
						genenc(false);
						match(assignop);
						exp();
						break;	
		case mar:		match(mar);
						genmar(true);
						match(assignop);
						dreg = matchreg();
						genbreg(dreg);
						break;	
		case iconst:
		case reg:		dreg = matchreg();
						gencreg(dreg);
						if (dreg != r_mbr) genenc(true);
						match(assignop);
						exp();
						break;	
		case IF:		match(IF);
						isjumpn = choice();
						gencond(isjumpn ? 1 : 2 );
						match(THEN);
						match(GOTO);
						pair = match(iconst);
						genaddr(pair->attr.num);
						break;	
		case GOTO:		match(GOTO);
						gencond(3);
						pair = match(iconst);
						genaddr(pair->attr.num);
						break;	
		case halt:		match(halt);
						genhalt();
						break;	
		default:		break;	
	}
	level--;
}
开发者ID:kevinseeker,项目名称:mic1,代码行数:53,代码来源:parser.c


示例20: drv

static int drv(int p,int c) {
  int p1,p2,cf,cl,cn,ret,m;
  assert(!P_IS(p,P_ERROR));
  m=new_memo(p,c);
  if(m!=-1) return M_RET(m);
  switch(P_TYP(p)) {
  case P_NOT_ALLOWED: case P_EMPTY: ret=notAllowed; break;
  case P_CHOICE: Choice(p,p1,p2); ret=choice(drv(p1,c),drv(p2,c)); break;
  case P_GROUP: Group(p,p1,p2); {int p11=group(drv(p1,c),p2); ret=nullable(p1)?choice(p11,drv(p2,c)):p11;} break;
  case P_ONE_OR_MORE: OneOrMore(p,p1); ret=group(drv(p1,c),choice(empty,p)); break;
  case P_EXCEPT: Except(p,p1,p2); ret=nullable(drv(p1,c))&&!nullable(drv(p2,c))?empty:notAllowed; break;
  case P_RANGE: Range(p,cf,cl); ret=cf<=c&&c<=cl?empty:notAllowed; break;
  case P_CLASS: Class(p,cn); ret=in_class(c,cn)?empty:notAllowed; break;
  case P_ANY: ret=empty; break;
  case P_CHAR: Char(p,cf); ret=c==cf?empty:notAllowed; break;
  default: ret=0; assert(0);
  }
  new_memo(p,c); M_SET(ret);
  accept_m();
  return ret;
}
开发者ID:EmanAliHassan,项目名称:csl-validator.js,代码行数:21,代码来源:rx.c



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


鲜花

握手

雷人

路过

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

请发表评论

全部评论

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