您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ sym_get_type函数代码示例

51自学网 2021-06-03 08:36:20
  C++
这篇教程C++ sym_get_type函数代码示例写得很实用,希望能帮到您。

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

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

示例1: conf_askvalue

static int conf_askvalue(struct symbol *sym, const char *def){    enum symbol_type type = sym_get_type(sym);    if (!sym_has_value(sym))        printf(_("(NEW) "));    line[0] = '/n';    line[1] = 0;    if (!sym_is_changable(sym)) {        printf("%s/n", def);        line[0] = '/n';        line[1] = 0;        return 0;    }    switch (input_mode) {    case ask_new:    case ask_silent:        if (sym_has_value(sym)) {            printf("%s/n", def);            return 0;        }        check_stdin();    case ask_all:        fflush(stdout);        if (NULL == fgets(line, 128, stdin)) {  //BRCM: check ret val to fix compiler warning            printf("fgets failed, exiting/n");            exit(2);        }        if (feof(stdin)) {            printf("/nEOF on std input -- exiting/n");            exit(2);        }        return 1;    default:        break;    }    switch (type) {    case S_INT:    case S_HEX:    case S_STRING:        printf("%s/n", def);        return 1;    default:        ;    }    printf("%s", line);    return 1;}
开发者ID:antonywcl,项目名称:AR-5315u_PLD,代码行数:52,


示例2: conf_askvalue

static int conf_askvalue(struct symbol *sym, const char *def){	enum symbol_type type = sym_get_type(sym);	if (!sym_has_value(sym))		printf(_("(NEW) "));	line[0] = '/n';	line[1] = 0;	if (!sym_is_changable(sym)) {		printf("%s/n", def);		line[0] = '/n';		line[1] = 0;		return 0;	}	switch (input_mode) {	case oldconfig:	case silentoldconfig:		if (sym_has_value(sym)) {			printf("%s/n", def);			return 0;		}		check_stdin();		/* fall through */	case oldaskconfig:		fflush(stdout);		xfgets(line, 128, stdin);		if (!tty_stdio)			printf("/n");		return 1;	default:		break;	}	switch (type) {	case S_INT:	case S_HEX:	case S_STRING:		printf("%s/n", def);		return 1;	default:		;	}	printf("%s", line);	return 1;}
开发者ID:JS-Wang,项目名称:linux-testing,代码行数:48,


示例3: conf_askvalue

static int conf_askvalue(struct symbol *sym, const char *def){	char *ret;	enum symbol_type type = sym_get_type(sym);	if (!sym_has_value(sym))		printf("(NEW) ");	line[0] = '/n';	line[1] = 0;	if (!sym_is_changable(sym)) {		printf("%s/n", def);		line[0] = '/n';		line[1] = 0;		return 0;	}	switch (input_mode) {	case ask_new:	case ask_silent:		if (sym_has_value(sym)) {			printf("%s/n", def);			return 0;		}		check_stdin();	case ask_all:		fflush(stdout);		ret = fgets(line, 128, stdin);		(void)ret;		return 1;	default:		break;	}	switch (type) {	case S_INT:	case S_HEX:	case S_STRING:		printf("%s/n", def);		return 1;	default:		;	}	printf("%s", line);	return 1;}
开发者ID:32bitmicro,项目名称:xvisor,代码行数:47,


示例4: change_sym_value

/* Change the value of a symbol and update the tree */static void change_sym_value(struct menu *menu, gint col){	struct symbol *sym = menu->sym;	tristate oldval, newval;	if (!sym)		return;	if (col == COL_NO)		newval = no;	else if (col == COL_MOD)		newval = mod;	else if (col == COL_YES)		newval = yes;	else		return;	switch (sym_get_type(sym)) {	case S_BOOLEAN:	case S_TRISTATE:		oldval = sym_get_tristate_value(sym);		if (!sym_tristate_within_range(sym, newval))			newval = yes;		sym_set_tristate_value(sym, newval);		config_changed = TRUE;		if (view_mode == FULL_VIEW)			update_tree(&rootmenu, NULL);		else if (view_mode == SPLIT_VIEW) {			update_tree(browsed, NULL);			display_list();		}		else if (view_mode == SINGLE_VIEW)			display_tree_part();	//fixme: keep exp/coll		break;	case S_INT:	case S_HEX:	case S_STRING:	default:		break;	}}
开发者ID:OpenHMR,项目名称:Open-HMR600,代码行数:42,


示例5: conf_string

static void conf_string(struct menu *menu){	const char *prompt = menu_get_prompt(menu);	int stat;	while (1) {		cprint_init();		cprint("--title");		cprint("%s", prompt ? prompt : "Main Menu");		cprint("--inputbox");		switch (sym_get_type(menu->sym)) {		case S_INT:			cprint(inputbox_instructions_int);			break;		case S_HEX:			cprint(inputbox_instructions_hex);			break;		case S_STRING:			cprint(inputbox_instructions_string);			break;		default:			/* panic? */;		}		cprint("10");		cprint("75");		cprint("%s", sym_get_string_value(menu->sym));		stat = exec_conf();		switch (stat) {		case 0:			if (sym_set_string_value(menu->sym, input_buf))				return;			show_textbox(NULL, "You have made an invalid entry.", 5, 43);			break;		case 1:			show_help(menu);			break;		case 255:			return;		}	}}
开发者ID:FelipeFernandes1988,项目名称:Alice-1121-Modem,代码行数:41,


示例6: conf_string

static void conf_string(struct menu *menu){	const char *prompt = menu_get_prompt(menu);	while (1) {		int res;		const char *heading;		switch (sym_get_type(menu->sym)) {		case S_INT:			heading = _(inputbox_instructions_int);			break;		case S_HEX:			heading = _(inputbox_instructions_hex);			break;		case S_STRING:			heading = _(inputbox_instructions_string);			break;		default:			heading = _("Internal mconf error!");		}		dialog_clear();		res = dialog_inputbox(prompt ? _(prompt) : _("Main Menu"),				      heading, 10, 75,				      sym_get_string_value(menu->sym));		switch (res) {		case 0:			if (sym_set_string_value(menu->sym, dialog_input_result))				return;			show_textbox(NULL, _("You have made an invalid entry."), 5, 43);			break;		case 1:			show_help(menu);			break;		case KEY_ESC:			return;		}	}}
开发者ID:16rd,项目名称:rt-n56u,代码行数:39,


示例7: conf_string

static void conf_string(struct menu *menu){	const char *prompt = menu_get_prompt(menu);	while (1) {		char *heading;		switch (sym_get_type(menu->sym)) {		case S_INT:			heading = (char *) inputbox_instructions_int;			break;		case S_HEX:			heading = (char *) inputbox_instructions_hex;			break;		case S_STRING:			heading = (char *) inputbox_instructions_string;			break;		default:			heading = "Internal mconf error!";			/* panic? */;		}		switch (dialog_inputbox(prompt ? prompt : "Main Menu",					heading, 10, 75,					sym_get_string_value(menu->sym))) {		case 0:			if (sym_set_string_value(menu->sym, dialog_input_result))				return;			show_textbox(NULL, "You have made an invalid entry.", 5, 43);			break;		case 1:			show_help(menu);			break;		case 255:			return;		}	}}
开发者ID:0919061,项目名称:PX4NuttX,代码行数:38,


示例8: conf_askvalue

static void conf_askvalue(struct symbol *sym, const char *def){	enum symbol_type type = sym_get_type(sym);	tristate val;	if (!sym_has_value(sym))		printf("(NEW) ");	line[0] = '/n';	line[1] = 0;	if (!sym_is_changable(sym)) {		printf("%s/n", def);		line[0] = '/n';		line[1] = 0;		return;	}	switch (input_mode) {	case set_no:	case set_mod:	case set_yes:	case set_random:		if (sym_has_value(sym)) {			printf("%s/n", def);			return;		}		break;	case ask_new:	case ask_silent:		if (sym_has_value(sym)) {			printf("%s/n", def);			return;		}		check_stdin();	case ask_all:		fflush(stdout);		fgets(line, 128, stdin);		return;	case set_default:		printf("%s/n", def);		return;	default:		break;	}	switch (type) {	case S_INT:	case S_HEX:	case S_STRING:		printf("%s/n", def);		return;	default:		;	}	switch (input_mode) {	case set_yes:		if (sym_tristate_within_range(sym, yes)) {			line[0] = 'y';			line[1] = '/n';			line[2] = 0;			break;		}	case set_mod:		if (type == S_TRISTATE) {			if (sym_tristate_within_range(sym, mod)) {				line[0] = 'm';				line[1] = '/n';				line[2] = 0;				break;			}		} else {			if (sym_tristate_within_range(sym, yes)) {				line[0] = 'y';				line[1] = '/n';				line[2] = 0;				break;			}		}	case set_no:		if (sym_tristate_within_range(sym, no)) {			line[0] = 'n';			line[1] = '/n';			line[2] = 0;			break;		}	case set_random:		do {			val = (tristate)(random() % 3);		} while (!sym_tristate_within_range(sym, val));		switch (val) {		case no: line[0] = 'n'; break;		case mod: line[0] = 'm'; break;		case yes: line[0] = 'y'; break;		}		line[1] = '/n';		line[2] = 0;		break;	default:		break;//.........这里部分代码省略.........
开发者ID:0x6e3078,项目名称:toybox,代码行数:101,


示例9: conf_choice

static int conf_choice(struct menu *menu){	struct symbol *sym, *def_sym;	struct menu *child;	int type;	bool is_new;	sym = menu->sym;	type = sym_get_type(sym);	is_new = !sym_has_value(sym);	if (sym_is_changable(sym)) {		conf_sym(menu);		sym_calc_value(sym);		switch (sym_get_tristate_value(sym)) {		case no:			return 1;		case mod:			return 0;		case yes:			break;		}	} else {		switch (sym_get_tristate_value(sym)) {		case no:			return 1;		case mod:			printf("%*s%s/n", indent - 1, "", menu_get_prompt(menu));			return 0;		case yes:			break;		}	}	while (1) {		int cnt, def;		printf("%*s%s/n", indent - 1, "", menu_get_prompt(menu));		def_sym = sym_get_choice_value(sym);		cnt = def = 0;		line[0] = 0;		for (child = menu->list; child; child = child->next) {			if (!menu_is_visible(child))				continue;			if (!child->sym) {				printf("%*c %s/n", indent, '*', menu_get_prompt(child));				continue;			}			cnt++;			if (child->sym == def_sym) {				def = cnt;				printf("%*c", indent, '>');			} else				printf("%*c", indent, ' ');			printf(" %d. %s", cnt, menu_get_prompt(child));			if (child->sym->name)				printf(" (%s)", child->sym->name);			if (!sym_has_value(child->sym))				printf(" (NEW)");			printf("/n");		}		printf("%*schoice", indent - 1, "");		if (cnt == 1) {			printf("[1]: 1/n");			goto conf_childs;		}		printf("[1-%d", cnt);		if (sym->help)			printf("?");		printf("]: ");		switch (input_mode) {		case ask_new:		case ask_silent:			if (!is_new) {				cnt = def;				printf("%d/n", cnt);				break;			}			check_stdin();		case ask_all:			fflush(stdout);			fgets(line, 128, stdin);			strip(line);			if (line[0] == '?') {				printf("/n%s/n", menu->sym->help ?					menu->sym->help : nohelp_text);				continue;			}			if (!line[0])				cnt = def;			else if (isdigit(line[0]))				cnt = atoi(line);			else				continue;			break;		case set_random:			def = (random() % cnt) + 1;		case set_default:		case set_yes:		case set_mod:		case set_no://.........这里部分代码省略.........
开发者ID:0x6e3078,项目名称:toybox,代码行数:101,


示例10: conf_sym

static int conf_sym(struct menu *menu){	struct symbol *sym = menu->sym;	int type;	tristate oldval, newval;	const char *help;	while (1) {		printf("%*s%s ", indent - 1, "", menu->prompt->text);		if (sym->name)			printf("(%s) ", sym->name);		type = sym_get_type(sym);		putchar('[');		oldval = sym_get_tristate_value(sym);		switch (oldval) {		case no:			putchar('N');			break;		case mod:			putchar('M');			break;		case yes:			putchar('Y');			break;		}		if (oldval != no && sym_tristate_within_range(sym, no))			printf("/n");		if (oldval != mod && sym_tristate_within_range(sym, mod))			printf("/m");		if (oldval != yes && sym_tristate_within_range(sym, yes))			printf("/y");		if (sym->help)			printf("/?");		printf("] ");		conf_askvalue(sym, sym_get_string_value(sym));		strip(line);		switch (line[0]) {		case 'n':		case 'N':			newval = no;			if (!line[1] || !strcmp(&line[1], "o"))				break;			continue;		case 'm':		case 'M':			newval = mod;			if (!line[1])				break;			continue;		case 'y':		case 'Y':			newval = yes;			if (!line[1] || !strcmp(&line[1], "es"))				break;			continue;		case 0:			newval = oldval;			break;		case '?':			goto help;		default:			continue;		}		if (sym_set_tristate_value(sym, newval))			return 0;help:		help = nohelp_text;		if (sym->help)			help = sym->help;		printf("/n%s/n", help);	}}
开发者ID:0x6e3078,项目名称:toybox,代码行数:73,


示例11: build_conf

static void build_conf(struct menu *menu){	struct symbol *sym;	struct property *prop;	struct menu *child;	int type, tmp, doint = 2;	tristate val;	char ch;	if (!menu_is_visible(menu))		return;	sym = menu->sym;	prop = menu->prompt;	if (!sym) {		if (prop && menu != current_menu) {			const char *prompt = menu_get_prompt(menu);			switch (prop->type) {			case P_MENU:				child_count++;				prompt = _(prompt);				if (single_menu_mode) {					item_make("%s%*c%s",						  menu->data ? "-->" : "++>",						  indent + 1, ' ', prompt);				} else					item_make("   %*c%s  --->", indent + 1, ' ', prompt);				item_set_tag('m');				item_set_data(menu);				if (single_menu_mode && menu->data)					goto conf_childs;				return;			case P_COMMENT:				if (prompt) {					child_count++;					item_make("   %*c*** %s ***", indent + 1, ' ', _(prompt));					item_set_tag(':');					item_set_data(menu);				}				break;			default:				if (prompt) {					child_count++;					item_make("---%*c%s", indent + 1, ' ', _(prompt));					item_set_tag(':');					item_set_data(menu);				}			}		} else			doint = 0;		goto conf_childs;	}	type = sym_get_type(sym);	if (sym_is_choice(sym)) {		struct symbol *def_sym = sym_get_choice_value(sym);		struct menu *def_menu = NULL;		child_count++;		for (child = menu->list; child; child = child->next) {			if (menu_is_visible(child) && child->sym == def_sym)				def_menu = child;		}		val = sym_get_tristate_value(sym);		if (sym_is_changable(sym)) {			switch (type) {			case S_BOOLEAN:				item_make("[%c]", val == no ? ' ' : '*');				break;			case S_TRISTATE:				switch (val) {				case yes: ch = '*'; break;				case mod: ch = 'M'; break;				default:  ch = ' '; break;				}				item_make("<%c>", ch);				break;			}			item_set_tag('t');			item_set_data(menu);		} else {			item_make("   ");			item_set_tag(def_menu ? 't' : ':');			item_set_data(menu);		}		item_add_str("%*c%s", indent + 1, ' ', _(menu_get_prompt(menu)));		if (val == yes) {			if (def_menu) {				item_add_str(" (%s)", _(menu_get_prompt(def_menu)));				item_add_str("  --->");				if (def_menu->list) {					indent += 2;					build_conf(def_menu);					indent -= 2;				}			}			return;//.........这里部分代码省略.........
开发者ID:16rd,项目名称:rt-n56u,代码行数:101,


示例12: build_conf

static void build_conf(struct menu *menu){	struct symbol *sym;	struct property *prop;	struct menu *child;	int type, tmp, doint = 2;	tristate val;	char ch;	if (!menu_is_visible(menu))		return;	sym = menu->sym;	prop = menu->prompt;	if (!sym) {		if (prop && menu != current_menu) {			const char *prompt = menu_get_prompt(menu);			switch (prop->type) {			case P_MENU:				child_count++;				cmake();				cprint_tag("m%p", menu);				if (single_menu_mode) {					cprint_name("%s%*c%s",						menu->data ? "-->" : "++>",						indent + 1, ' ', prompt);				} else {					cprint_name("   %*c%s  --->", indent + 1, ' ', prompt);				}				if (single_menu_mode && menu->data)					goto conf_childs;				return;			default:				if (prompt) {					child_count++;					cmake();					cprint_tag(":%p", menu);					cprint_name("---%*c%s", indent + 1, ' ', prompt);				}			}		} else			doint = 0;		goto conf_childs;	}	cmake();	type = sym_get_type(sym);	if (sym_is_choice(sym)) {		struct symbol *def_sym = sym_get_choice_value(sym);		struct menu *def_menu = NULL;		child_count++;		for (child = menu->list; child; child = child->next) {			if (menu_is_visible(child) && child->sym == def_sym)				def_menu = child;		}		val = sym_get_tristate_value(sym);		if (sym_is_changable(sym)) {			cprint_tag("t%p", menu);			switch (type) {			case S_BOOLEAN:				cprint_name("[%c]", val == no ? ' ' : '*');				break;			case S_TRISTATE:				switch (val) {				case yes: ch = '*'; break;				case mod: ch = 'M'; break;				default:  ch = ' '; break;				}				cprint_name("<%c>", ch);				break;			}		} else {			cprint_tag("%c%p", def_menu ? 't' : ':', menu);			cprint_name("   ");		}		cprint_name("%*c%s", indent + 1, ' ', menu_get_prompt(menu));		if (val == yes) {			if (def_menu) {				cprint_name(" (%s)", menu_get_prompt(def_menu));				cprint_name("  --->");				if (def_menu->list) {					indent += 2;					build_conf(def_menu);					indent -= 2;				}			}			return;		}	} else {		if (menu == current_menu) {			cprint_tag(":%p", menu);			cprint_name("---%*c%s", indent + 1, ' ', menu_get_prompt(menu));			goto conf_childs;		}		child_count++;//.........这里部分代码省略.........
开发者ID:0919061,项目名称:PX4NuttX,代码行数:101,


示例13: conf_askvalue

static void conf_askvalue(struct symbol *sym, const char *def){	enum symbol_type type = sym_get_type(sym);	tristate val;	if (!sym_has_value(sym))		printf("(NEW) ");	line[0] = '/n';	line[1] = 0;	switch (input_mode) {	case ask_new:	case ask_silent:		if (sym_has_value(sym)) {			printf("%s/n", def);			return;		}		if (!valid_stdin && input_mode == ask_silent) {			printf("aborted!/n/n");			printf("Console input/output is redirected. ");			printf("Run 'make oldconfig' to update configuration./n/n");			exit(1);		}	case ask_all:		fflush(stdout);		fgets(line, 128, stdin);		return;	case set_default:		printf("%s/n", def);		return;	default:		break;	}	switch (type) {	case S_INT:	case S_HEX:	case S_STRING:		printf("%s/n", def);		return;	default:		;	}	switch (input_mode) {	case set_yes:		if (sym_tristate_within_range(sym, yes)) {			line[0] = 'y';			line[1] = '/n';			line[2] = 0;			break;		}	case set_mod:		if (type == S_TRISTATE) {			if (sym_tristate_within_range(sym, mod)) {				line[0] = 'm';				line[1] = '/n';				line[2] = 0;				break;			}		} else {			if (sym_tristate_within_range(sym, yes)) {				line[0] = 'y';				line[1] = '/n';				line[2] = 0;				break;			}		}	case set_no:		if (sym_tristate_within_range(sym, no)) {			line[0] = 'n';			line[1] = '/n';			line[2] = 0;			break;		}	case set_random:		do {			val = (tristate)(random() % 3);		} while (!sym_tristate_within_range(sym, val));		switch (val) {		case no: line[0] = 'n'; break;		case mod: line[0] = 'm'; break;		case yes: line[0] = 'y'; break;		}		line[1] = '/n';		line[2] = 0;		break;	default:		break;	}	printf("%s", line);}
开发者ID:mmikulicic,项目名称:acaros,代码行数:92,


示例14: conf_choice

static int conf_choice(struct menu *menu){	struct symbol *sym, *def_sym;	struct menu *cmenu, *def_menu;	const char *help;	int type, len;	bool is_new;	sym = menu->sym;	type = sym_get_type(sym);	is_new = !sym_has_value(sym);	if (sym_is_changable(sym)) {		conf_sym(menu);		sym_calc_value(sym);		switch (sym_get_tristate_value(sym)) {		case no:			return 1;		case mod:			return 0;		case yes:			break;		}	} else {		sym->def = sym->curr;		if (S_TRI(sym->curr) == mod) {			printf("%*s%s/n", indent - 1, "", menu_get_prompt(menu));			return 0;		}	}	while (1) {		printf("%*s%s ", indent - 1, "", menu_get_prompt(menu));		def_sym = sym_get_choice_value(sym);		def_menu = NULL;		for (cmenu = menu->list; cmenu; cmenu = cmenu->next) {			if (!menu_is_visible(cmenu))				continue;			printo(menu_get_prompt(cmenu));			if (cmenu->sym == def_sym)				def_menu = cmenu;		}		printo(NULL);		if (def_menu)			printf("[%s] ", menu_get_prompt(def_menu));		else {			printf("/n");			return 1;		}		switch (input_mode) {		case ask_new:		case ask_silent:		case ask_all:			if (is_new)				sym->flags |= SYMBOL_NEW;			conf_askvalue(sym, menu_get_prompt(def_menu));			strip(line);			break;		default:			line[0] = 0;			printf("/n");		}		if (line[0] == '?' && !line[1]) {			help = nohelp_text;			if (menu->sym->help)				help = menu->sym->help;			printf("/n%s/n", help);			continue;		}		if (line[0]) {			len = strlen(line);			line[len] = 0;			def_menu = NULL;			for (cmenu = menu->list; cmenu; cmenu = cmenu->next) {				if (!cmenu->sym || !menu_is_visible(cmenu))					continue;				if (!strncasecmp(line, menu_get_prompt(cmenu), len)) {					def_menu = cmenu;					break;				}			}		}		if (def_menu) {			sym_set_choice_value(sym, def_menu->sym);			if (def_menu->list) {				indent += 2;				conf(def_menu->list);				indent -= 2;			}			return 1;		}	}}
开发者ID:mmikulicic,项目名称:acaros,代码行数:93,



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


C++ sym_has_value函数代码示例
C++ sym_get_tristate_value函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。