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

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

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

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

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

示例1: pre_SS

static intpre_SS(DECL_ARGS){	int	 i;	switch (n->type) {	case MAN_BLOCK:		mt->fl &= ~MANT_LITERAL;		mt->lmargin[mt->lmargincur] = term_len(p, p->defindent);		mt->offset = term_len(p, p->defindent);		/* If following a prior empty `SS', no vspace. */		if (n->prev && MAN_SS == n->prev->tok)			if (NULL == n->prev->body->child)				break;		if (NULL == n->prev)			break;		for (i = 0; i < mt->pardist; i++)			term_vspace(p);		break;	case MAN_HEAD:		term_fontrepl(p, TERMFONT_BOLD);		p->offset = term_len(p, 3);		break;	case MAN_BODY:		p->offset = mt->offset;		break;	default:		break;	}	return(1);}
开发者ID:mr-justin,项目名称:freebsd,代码行数:32,


示例2: termp_nm_pre

static inttermp_nm_pre(DECL_ARGS){	const char	*cp;	if (n->type == ROFFT_BLOCK) {		p->flags |= TERMP_PREKEEP;		return 1;	}	if (n->type == ROFFT_BODY) {		if (NULL == n->child)			return 0;		p->flags |= TERMP_NOSPACE;		cp = NULL;		if (n->prev->child != NULL)		    cp = n->prev->child->string;		if (cp == NULL)			cp = meta->name;		if (cp == NULL)			p->offset += term_len(p, 6);		else			p->offset += term_len(p, 1) + term_strlen(p, cp);		return 1;	}	if (NULL == n->child && NULL == meta->name)		return 0;	if (n->type == ROFFT_HEAD)		synopsis_pre(p, n->parent);	if (n->type == ROFFT_HEAD &&	    NULL != n->next && NULL != n->next->child) {		p->flags |= TERMP_NOSPACE | TERMP_NOBREAK | TERMP_BRIND;		p->trailspace = 1;		p->rmargin = p->offset + term_len(p, 1);		if (NULL == n->child) {			p->rmargin += term_strlen(p, meta->name);		} else if (n->child->type == ROFFT_TEXT) {			p->rmargin += term_strlen(p, n->child->string);			if (n->child->next)				p->flags |= TERMP_HANG;		} else {			p->rmargin += term_len(p, 5);			p->flags |= TERMP_HANG;		}	}	term_fontpush(p, TERMFONT_BOLD);	if (NULL == n->child)		term_word(p, meta->name);	return 1;}
开发者ID:gokzy,项目名称:netbsd-src,代码行数:54,


示例3: termp_nm_pre

/* ARGSUSED */static inttermp_nm_pre(DECL_ARGS){	if (MDOC_BLOCK == n->type) {		p->flags |= TERMP_PREKEEP;		return(1);	}	if (MDOC_BODY == n->type) {		if (NULL == n->child)			return(0);		p->flags |= TERMP_NOSPACE;		p->offset += term_len(p, 1) +		    (NULL == n->prev->child ?		     term_strlen(p, meta->name) :		     MDOC_TEXT == n->prev->child->type ?		     term_strlen(p, n->prev->child->string) :		     term_len(p, 5));		return(1);	}	if (NULL == n->child && NULL == meta->name)		return(0);	if (MDOC_HEAD == n->type)		synopsis_pre(p, n->parent);	if (MDOC_HEAD == n->type && n->next->child) {		p->flags |= TERMP_NOSPACE | TERMP_NOBREAK;		p->trailspace = 1;		p->rmargin = p->offset + term_len(p, 1);		if (NULL == n->child) {			p->rmargin += term_strlen(p, meta->name);		} else if (MDOC_TEXT == n->child->type) {			p->rmargin += term_strlen(p, n->child->string);			if (n->child->next)				p->flags |= TERMP_HANG;		} else {			p->rmargin += term_len(p, 5);			p->flags |= TERMP_HANG;		}	}	term_fontpush(p, TERMFONT_BOLD);	if (NULL == n->child)		term_word(p, meta->name);	return(1);}
开发者ID:2015520,项目名称:SequoiaDB,代码行数:50,


示例4: termp_sh_pre

static inttermp_sh_pre(DECL_ARGS){	switch (n->type) {	case MDOC_BLOCK:		/*		 * Vertical space before sections, except		 * when the previous section was empty.		 */		if (n->prev == NULL ||		    MDOC_Sh != n->prev->tok ||		    (n->prev->body != NULL &&		     n->prev->body->child != NULL))			term_vspace(p);		break;	case MDOC_HEAD:		term_fontpush(p, TERMFONT_BOLD);		break;	case MDOC_BODY:		p->offset = term_len(p, p->defindent);		if (SEC_AUTHORS == n->sec)			p->flags &= ~(TERMP_SPLIT|TERMP_NOSPLIT);		break;	default:		break;	}	return(1);}
开发者ID:jashank,项目名称:freebsd,代码行数:29,


示例5: pre_RS

static intpre_RS(DECL_ARGS){	struct roffsu	 su;	switch (n->type) {	case MAN_BLOCK:		term_newln(p);		return(1);	case MAN_HEAD:		return(0);	default:		break;	}	n = n->parent->head;	n->aux = SHRT_MAX + 1;	if (n->child != NULL && a2roffsu(n->child->string, &su, SCALE_EN))		n->aux = term_hspan(p, &su);	if (n->aux < 0 && (size_t)(-n->aux) > mt->offset)		n->aux = -mt->offset;	else if (n->aux > SHRT_MAX)		n->aux = term_len(p, p->defindent);	mt->offset += n->aux;	p->offset = mt->offset;	p->rmargin = p->maxrmargin;	if (++mt->lmarginsz < MAXMARGINS)		mt->lmargincur = mt->lmarginsz;	mt->lmargin[mt->lmargincur] = mt->lmargin[mt->lmargincur - 1];	return(1);}
开发者ID:ajinkya93,项目名称:netbsd-src,代码行数:34,


示例6: pre_IP

static intpre_IP(DECL_ARGS){	struct roffsu		 su;	const struct roff_node	*nn;	int			 len, savelit;	switch (n->type) {	case ROFFT_BODY:		p->flags |= TERMP_NOSPACE;		break;	case ROFFT_HEAD:		p->flags |= TERMP_NOBREAK;		p->trailspace = 1;		break;	case ROFFT_BLOCK:		print_bvspace(p, n, mt->pardist);		/* FALLTHROUGH */	default:		return 1;	}	/* Calculate the offset from the optional second argument. */	if ((nn = n->parent->head->child) != NULL &&	    (nn = nn->next) != NULL &&	    a2roffsu(nn->string, &su, SCALE_EN)) {		len = term_hspan(p, &su) / 24;		if (len < 0 && (size_t)(-len) > mt->offset)			len = -mt->offset;		else if (len > SHRT_MAX)			len = term_len(p, p->defindent);		mt->lmargin[mt->lmargincur] = len;	} else		len = mt->lmargin[mt->lmargincur];	switch (n->type) {	case ROFFT_HEAD:		p->offset = mt->offset;		p->rmargin = mt->offset + len;		savelit = MANT_LITERAL & mt->fl;		mt->fl &= ~MANT_LITERAL;		if (n->child)			print_man_node(p, mt, n->child, meta);		if (savelit)			mt->fl |= MANT_LITERAL;		return 0;	case ROFFT_BODY:		p->offset = mt->offset + len;		p->rmargin = p->maxrmargin;		break;	default:		break;	}	return 1;}
开发者ID:ajinkya93,项目名称:OpenBSD,代码行数:60,


示例7: termp_fn_pre

/* ARGSUSED */static inttermp_fn_pre(DECL_ARGS){	size_t		 rmargin = 0;	int		 pretty;	pretty = MDOC_SYNPRETTY & n->flags;	synopsis_pre(p, n);	if (NULL == (n = n->child))		return(0);	if (pretty) {		rmargin = p->rmargin;		p->rmargin = p->offset + term_len(p, 4);		p->flags |= TERMP_NOBREAK | TERMP_HANG;	}	assert(MDOC_TEXT == n->type);	term_fontpush(p, TERMFONT_BOLD);	term_word(p, n->string);	term_fontpop(p);	if (pretty) {		term_flushln(p);		p->flags &= ~(TERMP_NOBREAK | TERMP_HANG);		p->offset = p->rmargin;		p->rmargin = rmargin;	}	p->flags |= TERMP_NOSPACE;	term_word(p, "(");	p->flags |= TERMP_NOSPACE;	for (n = n->next; n; n = n->next) {		assert(MDOC_TEXT == n->type);		term_fontpush(p, TERMFONT_UNDER);		if (pretty)			p->flags |= TERMP_NBRWORD;		term_word(p, n->string);		term_fontpop(p);		if (n->next) {			p->flags |= TERMP_NOSPACE;			term_word(p, ",");		}	}	p->flags |= TERMP_NOSPACE;	term_word(p, ")");	if (pretty) {		p->flags |= TERMP_NOSPACE;		term_word(p, ";");		term_flushln(p);	}	return(0);}
开发者ID:2015520,项目名称:SequoiaDB,代码行数:61,


示例8: termp_sh_pre

/* ARGSUSED */static inttermp_sh_pre(DECL_ARGS){	/* No vspace between consecutive `Sh' calls. */	switch (n->type) {	case (MDOC_BLOCK):		if (n->prev && MDOC_Sh == n->prev->tok)			if (NULL == n->prev->body->child)				break;		term_vspace(p);		break;	case (MDOC_HEAD):		term_fontpush(p, TERMFONT_BOLD);		break;	case (MDOC_BODY):		p->offset = term_len(p, p->defindent);		if (SEC_AUTHORS == n->sec)			p->flags &= ~(TERMP_SPLIT|TERMP_NOSPLIT);		break;	default:		break;	}	return(1);}
开发者ID:2015520,项目名称:SequoiaDB,代码行数:27,


示例9: terminal_mdoc

voidterminal_mdoc(void *arg, const struct mdoc *mdoc){	const struct mdoc_node	*n;	const struct mdoc_meta	*meta;	struct termp		*p;	p = (struct termp *)arg;	if (0 == p->defindent)		p->defindent = 5;	p->overstep = 0;	p->maxrmargin = p->defrmargin;	p->tabwidth = term_len(p, 5);	if (NULL == p->symtab)		p->symtab = mchars_alloc();	n = mdoc_node(mdoc);	meta = mdoc_meta(mdoc);	term_begin(p, print_mdoc_head, print_mdoc_foot, meta);	if (n->child)		print_mdoc_nodelist(p, NULL, meta, n->child);	term_end(p);}
开发者ID:2015520,项目名称:SequoiaDB,代码行数:29,


示例10: terminal_man

voidterminal_man(void *arg, const struct man *man){	struct termp		*p;	const struct man_meta	*meta;	struct man_node		*n;	struct mtermp		 mt;	p = (struct termp *)arg;	p->overstep = 0;	p->rmargin = p->maxrmargin = p->defrmargin;	p->tabwidth = term_len(p, 5);	n = man_node(man)->child;	meta = man_meta(man);	memset(&mt, 0, sizeof(struct mtermp));	mt.lmargin[mt.lmargincur] = term_len(p, p->defindent);	mt.offset = term_len(p, p->defindent);	mt.pardist = 1;	if (p->synopsisonly) {		while (n != NULL) {			if (n->tok == MAN_SH &&			    n->child->child->type == MAN_TEXT &&			    !strcmp(n->child->child->string, "SYNOPSIS")) {				if (n->child->next->child != NULL)					print_man_nodelist(p, &mt,					    n->child->next->child, meta);				term_newln(p);				break;			}			n = n->next;		}	} else {		if (p->defindent == 0)			p->defindent = 7;		term_begin(p, print_man_head, print_man_foot, meta);		p->flags |= TERMP_NOSPACE;		if (n != NULL)			print_man_nodelist(p, &mt, n, meta);		term_end(p);	}}
开发者ID:ajinkya93,项目名称:netbsd-src,代码行数:46,


示例11: pre_SS

static intpre_SS(DECL_ARGS){	int	 i;	switch (n->type) {	case ROFFT_BLOCK:		mt->fl &= ~MANT_LITERAL;		mt->lmargin[mt->lmargincur] = term_len(p, p->defindent);		mt->offset = term_len(p, p->defindent);		/*		 * No vertical space before the first subsection		 * and after an empty subsection.		 */		do {			n = n->prev;		} while (n != NULL && n->tok != TOKEN_NONE &&		    termacts[n->tok].flags & MAN_NOTEXT);		if (n == NULL || (n->tok == MAN_SS && n->body->child == NULL))			break;		for (i = 0; i < mt->pardist; i++)			term_vspace(p);		break;	case ROFFT_HEAD:		term_fontrepl(p, TERMFONT_BOLD);		p->offset = term_len(p, 3);		p->rmargin = mt->offset;		p->trailspace = mt->offset;		p->flags |= TERMP_NOBREAK | TERMP_BRIND;		break;	case ROFFT_BODY:		p->offset = mt->offset;		p->rmargin = p->maxrmargin;		p->trailspace = 0;		p->flags &= ~(TERMP_NOBREAK | TERMP_BRIND);		break;	default:		break;	}	return 1;}
开发者ID:ajinkya93,项目名称:OpenBSD,代码行数:45,


示例12: a2offs

static size_ta2offs(const struct termp *p, const char *v){	struct roffsu	 su;	if ('/0' == *v)		return(0);	else if (0 == strcmp(v, "left"))		return(0);	else if (0 == strcmp(v, "indent"))		return(term_len(p, p->defindent + 1));	else if (0 == strcmp(v, "indent-two"))		return(term_len(p, (p->defindent + 1) * 2));	else if ( ! a2roffsu(v, &su, SCALE_MAX))		SCALE_HS_INIT(&su, term_strlen(p, v));	return(term_hspan(p, &su));}
开发者ID:2015520,项目名称:SequoiaDB,代码行数:18,


示例13: tbl_number

static voidtbl_number(struct termp *tp, const struct tbl *tbl,		const struct tbl_dat *dp,		const struct roffcol *col){	char		*cp;	char		 buf[2];	const char	*str;	size_t		 sz, psz, ssz, d, padl;	int		 i;	/*	 * See calc_data_number().  Left-pad by taking the offset of our	 * and the maximum decimal; right-pad by the remaining amount.	 */	str = dp && dp->string ? dp->string : "";	sz = term_strlen(tp, str);	buf[0] = tbl->decimal;	buf[1] = '/0';	psz = term_strlen(tp, buf);	if (NULL != (cp = strchr(str, tbl->decimal))) {		buf[1] = '/0';		for (ssz = 0, i = 0; cp != &str[i]; i++) {			buf[0] = str[i];			ssz += term_strlen(tp, buf);		}		d = ssz + psz;	} else		d = sz + psz;	sz += term_len(tp, 2);	d += term_len(tp, 1);	padl = col->decimal - d;	tbl_char(tp, ASCII_NBRSP, padl);	term_word(tp, str);	tbl_char(tp, ASCII_NBRSP, col->width - sz - padl);}
开发者ID:AgamAgarwal,项目名称:minix,代码行数:44,


示例14: termp_d1_pre

static inttermp_d1_pre(DECL_ARGS){	if (n->type != ROFFT_BLOCK)		return 1;	term_newln(p);	p->offset += term_len(p, p->defindent + 1);	return 1;}
开发者ID:gokzy,项目名称:netbsd-src,代码行数:10,


示例15: termp_d1_pre

/* ARGSUSED */static inttermp_d1_pre(DECL_ARGS){	if (MDOC_BLOCK != n->type)		return(1);	term_newln(p);	p->offset += term_len(p, p->defindent + 1);	return(1);}
开发者ID:2015520,项目名称:SequoiaDB,代码行数:11,


示例16: print_mdoc_foot

static voidprint_mdoc_foot(struct termp *p, const void *arg){	const struct mdoc_meta *meta;	size_t sz;	meta = (const struct mdoc_meta *)arg;	term_fontrepl(p, TERMFONT_NONE);	/*	 * Output the footer in new-groff style, that is, three columns	 * with the middle being the manual date and flanking columns	 * being the operating system:	 *	 * SYSTEM                  DATE                    SYSTEM	 */	term_vspace(p);	p->offset = 0;	sz = term_strlen(p, meta->date);	p->rmargin = p->maxrmargin > sz ?	    (p->maxrmargin + term_len(p, 1) - sz) / 2 : 0;	p->trailspace = 1;	p->flags |= TERMP_NOSPACE | TERMP_NOBREAK;	term_word(p, meta->os);	term_flushln(p);	p->offset = p->rmargin;	sz = term_strlen(p, meta->os);	p->rmargin = p->maxrmargin > sz ? p->maxrmargin - sz : 0;	p->flags |= TERMP_NOSPACE;	term_word(p, meta->date);	term_flushln(p);	p->offset = p->rmargin;	p->rmargin = p->maxrmargin;	p->trailspace = 0;	p->flags &= ~TERMP_NOBREAK;	p->flags |= TERMP_NOSPACE;	term_word(p, meta->os);	term_flushln(p);	p->offset = 0;	p->rmargin = p->maxrmargin;	p->flags = 0;}
开发者ID:jashank,项目名称:freebsd,代码行数:51,


示例17: pre_SH

static intpre_SH(DECL_ARGS){	int	 i;	switch (n->type) {	case MAN_BLOCK:		mt->fl &= ~MANT_LITERAL;		mt->lmargin[mt->lmargincur] = term_len(p, p->defindent);		mt->offset = term_len(p, p->defindent);		/*		 * No vertical space before the first section		 * and after an empty section.		 */		do {			n = n->prev;		} while (n != NULL && termacts[n->tok].flags & MAN_NOTEXT);		if (n == NULL || (n->tok == MAN_SH && n->body->child == NULL))			break;		for (i = 0; i < mt->pardist; i++)			term_vspace(p);		break;	case MAN_HEAD:		term_fontrepl(p, TERMFONT_BOLD);		p->offset = 0;		break;	case MAN_BODY:		p->offset = mt->offset;		break;	default:		break;	}	return(1);}
开发者ID:ajinkya93,项目名称:netbsd-src,代码行数:38,


示例18: termp_ss_pre

static inttermp_ss_pre(DECL_ARGS){	switch (n->type) {	case ROFFT_BLOCK:		term_newln(p);		if (n->prev)			term_vspace(p);		break;	case ROFFT_HEAD:		term_fontpush(p, TERMFONT_BOLD);		p->offset = term_len(p, (p->defindent+1)/2);		break;	case ROFFT_BODY:		p->offset = term_len(p, p->defindent);		break;	default:		break;	}	return 1;}
开发者ID:gokzy,项目名称:netbsd-src,代码行数:23,


示例19: terminal_man

voidterminal_man(void *arg, const struct man *man){	struct termp		*p;	const struct man_node	*n;	const struct man_meta	*meta;	struct mtermp		 mt;	p = (struct termp *)arg;	if (0 == p->defindent)		p->defindent = 7;	p->overstep = 0;	p->maxrmargin = p->defrmargin;	p->tabwidth = term_len(p, 5);	if (NULL == p->symtab)		p->symtab = mchars_alloc();	n = man_node(man);	meta = man_meta(man);	term_begin(p, print_man_head, print_man_foot, meta);	p->flags |= TERMP_NOSPACE;	memset(&mt, 0, sizeof(struct mtermp));	mt.lmargin[mt.lmargincur] = term_len(p, p->defindent);	mt.offset = term_len(p, p->defindent);	mt.pardist = 1;	if (n->child)		print_man_nodelist(p, &mt, n->child, meta);	term_end(p);}
开发者ID:alexandermerritt,项目名称:dragonfly,代码行数:37,



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


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