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

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

51自学网 2021-06-01 19:55:41
  C++
这篇教程C++ Brdline函数代码示例写得很实用,希望能帮到您。

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

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

示例1: rowloadfonts

/* * Get font names from load file so we don't load fonts we won't use */voidrowloadfonts(char *file){	int i;	Biobuf *b;	char *l;	b = Bopen(file, OREAD);	if(b == nil)		return;	/* current directory */	l = Brdline(b, '/n');	if(l == nil)		goto Return;	/* global fonts */	for(i=0; i<2; i++){		l = Brdline(b, '/n');		if(l == nil)			goto Return;		l[Blinelen(b)-1] = 0;		if(*l && strcmp(l, fontnames[i])!=0){			free(fontnames[i]);			fontnames[i] = estrdup(l);		}	}    Return:	Bterm(b);}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:31,


示例2: main

main(void){	char *re;	char *line;	Reprog *prog;	char *cp;	Biobuf in;	Binit(&in, 0, OREAD);	print("re> ");	while(re = Brdline(&in, '/n')){		re[Blinelen(&in)-1] = 0;		if(*re == 0)			break;		prog = regcomp(re);		print("> ");		while(line = Brdline(&in, '/n')){			line[Blinelen(&in)-1] = 0;			if(cp = strchr(line, '/n'))				*cp = 0;			if(*line == 0)				break;			if(regexec(prog, line, 0))				print("yes/n");			else				print("no/n");			print("> ");		}		print("re> ");	}}
开发者ID:99years,项目名称:plan9,代码行数:31,


示例3: rune2html

/* * Translate Unicode to HTML by asking tcs(1). * This way we don't have yet another table. */Rune*rune2html(Rune r){	static Biobuf b;	static int fd = -1;	static Rune **tcscache[256];	int p[2];	char *q;		if(r == '/n')		return L("/n");	if(((uint)r&~0xFFFF) != 0){		/* The cache must grow a lot to handle them */		fprint(2, "%s: can't handle rune '%C'/n", argv0, r);		return L("?");	}	if(tcscache[r>>8] && tcscache[r>>8][r&0xFF])		return tcscache[r>>8][r&0xFF];	if(fd < 0){		if(pipe(p) < 0)			sysfatal("pipe: %r");		switch(fork()){		case -1:			sysfatal("fork: %r");		case 0:			dup2(p[0], 0);			dup2(p[1], 1);			close(p[0]);			close(p[1]);			execl(BINDIR "/tcs", "tcs", "-t", "html", nil);			_exits(0);		default:			fd = p[1];			Binit(&b, p[0], OREAD);			break;		}	}	/* HACK: extra newlines force rune+/n through tcs now */	fprint(fd, "%C/n/n/n/n", r);	q = Brdline(&(b.Biobufhdr), '/n');	while (q != nil && *q == '/n')		q = Brdline(&(b.Biobufhdr), '/n');	if(q == nil)		sysfatal("tcs: early eof");	q[Blinelen(&(b.Biobufhdr))-1] = 0;	if(tcscache[r>>8] == nil)		tcscache[r>>8] = emalloc(256*sizeof tcscache[0][0]);	tcscache[r>>8][r&0xFF] = erunesmprint("%s", q);	return tcscache[r>>8][r&0xFF];}
开发者ID:n-t-roff,项目名称:Plan9_troff,代码行数:57,


示例4: readsnap

Proc*readsnap(Biobuf *b){	char *q;	char buf[12];	int32_t pid;	Proc *p, *plist;	int i, n;	if((q = Brdline(b, '/n')) == nil)		panic("error reading snapshot file");	if(strncmp(q, "process snapshot", strlen("process snapshot")) != 0)		panic("bad snapshot file format");	plist = nil;	while(q = Brdline(b, '/n')) {		q[Blinelen(b)-1] = 0;		pid = atol(q);		q += 12;		p = findpid(plist, pid);		if(p == nil) {			p = emalloc(sizeof(*p));			p->link = plist;			p->pid = pid;			plist = p;		}		for(i=0; i<Npfile; i++) {			if(strcmp(pfile[i], q) == 0) {				p->d[i] = readdata(b);				break;			}		}		if(i != Npfile)			continue;		if(strcmp(q, "mem") == 0) {			if(Bread(b, buf, 12) != 12) 				panic("can't read memory section");			n = atoi(buf);			p->nseg = n;			p->seg = emalloc(n*sizeof(*p->seg));			for(i=0; i<n; i++)				readseg(&p->seg[i], b, plist);		} else if(strcmp(q, "text") == 0)			readseg(&p->text, b, plist);		else			panic("unknown section");	}	return plist;}
开发者ID:aahud,项目名称:harvey,代码行数:50,


示例5: menu

intmenu(Biobuf *bp, int net){	char *cp;	int done;	comm->stopped = 1;	rawoff();	fprint(2, ">>> ");	for(done = 0; !done; ){		cp = Brdline(bp, '/n');		if(cp == 0){			comm->stopped = 0;			return -1;		}		cp[Blinelen(bp)-1] = 0;		switch(*cp){		case '!':			system(Bfildes(bp), cp+1);			done = 1;			break;		case '.':			done = 1;			break;		case 'q':			comm->stopped = 0;			return -1;		case 'o':			switch(*(cp+1)){			case 'd':				send3(net, Iac, Do, atoi(cp+2));				break;			case 'w':				send3(net, Iac, Will, atoi(cp+2));				break;			}			break;		case 'r':			comm->returns = !comm->returns;			done = 1;			break;		case 'i':			send2(net, Iac, Interrupt);			break;		case 'b':			send2(net, Iac, Break);			break;		default:			fprint(2, STDHELP);			break;		}		if(!done)			fprint(2, ">>> ");	}	rawon();	comm->stopped = 0;	return 0;}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:60,


示例6: threadmain

voidthreadmain(int argc, char *argv[]){	char *errmsg;	int ac;	char *ap, *av[256];	Cmd *cp;	int32_t status;	if (argc > 3) {		print("usage: cifscmd [to [share]]/n");		exits("args");	}	smbglobalsguess(1);	errmsg = nil;	if (Binit(&bin, 0, OREAD) == Beof || Binit(&bout, 1, OWRITE) == Beof) {		fprint(2, "%s: can't init bio: %r/n", argv0);		threadexits("Binit");	}	if (argc > 1) {		c = smbconnect(argv[1], argc == 3 ? argv[2] : nil, &errmsg);		if (c == nil)			fprint(2, "failed to connect: %s/n", errmsg);	}	while (ap = Brdline(&bin, '/n')) {		ap[Blinelen(&bin) - 1] = 0;		switch (ac = parse(ap, av, nelem(av))) {		default:			for (cp = cmd; cp->name; cp++) {				if (strcmp(cp->name, av[0]) == 0)					break;			}			if (cp->name == 0) {				Bprint(&bout, "eh?/n");				break;			}			if (c == 0 && cp->connected) {				Bprint(&bout, "not currently connected/n");				break;			}			if ((status = (*cp->f)(c, ac - 1, &av[1])) != -1) {				if(verbose)					Bprint(&bout, "ok %ld/%ld/n", status >> 16, status & 0xffff);				break;			}			break;		case -1:			Bprint(&bout, "eh?/n");			break;		case 0:			break;		}		Bflush(&bout);	}	threadexits(0);}
开发者ID:bhanug,项目名称:harvey,代码行数:60,


示例7: awk

intawk(Biobuf *b, char **field, int n){	char *line;	int i;	while(line = Brdline(b, '/n')){		line[Blinelen(b)-1] = 0;		while(*line == ' ' || *line == '/t')			*line++ = 0;		for(i = 0; i < n; i++){			if(*line == 0 || *line == '#')				break;			field[i] = line;			while(*line && *line != ' ' && *line != '/t')				line++;			while(*line == ' ' || *line == '/t')				*line++ = 0;		}		if(i)			return i;	}	return 0;}
开发者ID:99years,项目名称:plan9,代码行数:25,


示例8: readroutes

voidreadroutes(void){	int n;	char *p;	Biobuf *b;	char *f[6];	Route route;	b = Bopen(routefile, OREAD);	if(b == 0)		return;	while(p = Brdline(b, '/n')){		p[Blinelen(b)-1] = 0;		n = getfields(p, f, 6, 1, " /t");		if(n < 5)			continue;		v4parseip(route.dest, f[0]);		v4parseipmask(route.mask, f[1]);		v4parseip(route.gate, f[2]);		route.metric = Infinity;		if(equivip(route.dest, ralloc.def.dest)		&& equivip(route.mask, ralloc.def.mask))			memmove(ralloc.def.gate, route.gate, Pasize);		else if(!equivip(route.dest, route.gate) && strchr(f[3], 'i') == 0)			considerroute(&route);	}	Bterm(b);}
开发者ID:aahud,项目名称:harvey,代码行数:29,


示例9: wrd

intwrd(void){	static int nlines;	char *l, *src[13];	int n;	l = Brdline(wr, '/n');	if(l == 0)		return -1;	++nlines;	l[BLINELEN(wr)-1] = 0;	n = strparse(l, src, 13, " ");	if(n != 12 || src[0][0] == 0 || src[0][1] != 0){		fprint(2, "wrap file format error, line %d/n", nlines);		exits("format");	}	wbuf.stype = src[0][0];	wbuf.mark = strtol(src[1], 0, 10);	strncpy(wbuf.sname, src[2], sizeof wbuf.sname);	wbuf.slen = strtol(src[3], 0, 10);	coord(&wbuf.pent[0], &src[4]);	coord(&wbuf.pent[1], &src[8]);	return 0;}
开发者ID:kahrs,项目名称:cda,代码行数:25,


示例10: conslock

intconslock(void){	char *ln;	char nkey1[DESKEYLEN];	static char zeroes[DESKEYLEN];	if(memcmp(nvr.machkey, zeroes, DESKEYLEN) == 0) {		print("no password set/n");		return 0;	}	for(;;) {		print("%s password:", service);		/* could turn off echo here */		if ((ln = Brdline(&bin, '/n')) == nil)			return 0;		ln[Blinelen(&bin)-1] = '/0';		/* could turn on echo here */		memset(nkey1, 0, DESKEYLEN);		passtokey(nkey1, ln);		if(memcmp(nkey1, nvr.machkey, DESKEYLEN) == 0) {			prdate();			break;		}		print("Bad password/n");		delay(1000);	}	return 1;}
开发者ID:Nurb432,项目名称:plan9front,代码行数:33,


示例11: main

voidmain(int argc, char *argv[]){	double n;	int i;	char *l;	if(argc > 1) {		for(i=1; i<argc; i++) {			n = atof(argv[i]);			factor(n);		}		exits(0);	}	Binit(&bin, 0, OREAD);	for(;;) {		l = Brdline(&bin, '/n');		if(l ==  0)			break;		n = atof(l);		if(n <= 0)			break;		factor(n);	}	exits(0);}
开发者ID:00001,项目名称:plan9port,代码行数:27,


示例12: contentinit

voidcontentinit(void){	static Biobuf *b = nil;	static Qid qid;	char *file, *s;	Suffix *this;	file = "/sys/lib/mimetype";	if(b == nil){ /* first time */		b = Bopen(file, OREAD);		if(b == nil)			sysfatal("can't read from %s", file);	}	if(updateQid(Bfildes(b), &qid) == 0)		return;	Bseek(b, 0, 0);	while(suffixes!=nil){		this = suffixes;		suffixes = suffixes->next;		free(this->suffix);		free(this->generic);		free(this->specific);		free(this->encoding);		free(this);	}	while((s = Brdline(b, '/n')) != nil){		s[Blinelen(b) - 1] = 0;		suffixes = parsesuffix(s, suffixes);	}}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:32,


示例13: inqsize

Devsizeinqsize(char *file){	int nf;	char *ln, *end, *data = malloc(strlen(file) + 5 + 1);	char *fields[4];	Devsize rv = -1;	Biobuf *bp;	strcpy(data, file);	end = strstr(data, "/data");	if (end == nil)		strcat(data, "/ctl");	else		strcpy(end, "/ctl");	bp = Bopen(data, OREAD);	if (bp) {		while (rv < 0 && (ln = Brdline(bp, '/n')) != nil) {			ln[Blinelen(bp)-1] = '/0';			nf = tokenize(ln, fields, nelem(fields));			if (nf == 3 && strcmp(fields[0], "geometry") == 0)				rv = atoi(fields[2]);		}		Bterm(bp);	}	free(data);	return rv;}
开发者ID:Requaos,项目名称:harvey,代码行数:28,


示例14: okfile

static intokfile(char *cp, Biobuf *fp){	char *buf;	int len;	char *bp, *ep;	int c;	len = strlen(cp);	Bseek(fp, 0, 0);		/* one iteration per system name in the file */	while(buf = Brdline(fp, '/n')) {		ep = &buf[Blinelen(fp)];		for(bp=buf; bp < ep;){			while(isspace(*bp) || *bp==',')				bp++;			if(strncmp(bp, cp, len) == 0) {				c = *(bp+len);				if(isspace(c) || c==',')					return 1;			}			while(bp < ep && (!isspace(*bp)) && *bp!=',')				bp++;		}	}	/* didn't find it, prohibit forwarding */	return 0;}
开发者ID:00001,项目名称:plan9port,代码行数:30,


示例15: msgheadline

voidmsgheadline(Biobuf *bin, int n, Biobuf *bout){	char *p, *q;	char *date;	char *from;	char *subject;	date = nil;	from = nil;	subject = nil;	while(p = Brdline(bin, '/n')){		p[Blinelen(bin)-1] = '/0';		if((q = strchr(p, ':')) == nil)			continue;		*q++ = '/0';		if(cistrcmp(p, "from")==0)			from = fixfrom(skipwhite(q));		else if(cistrcmp(p, "subject")==0)			subject = estrdup(skipwhite(q));		else if(cistrcmp(p, "date")==0)			date = fixdate(skipwhite(q));	}	Bprint(bout, "%d//t%s", n, from ? from : "");	if(date)		Bprint(bout, "/t%s", date);	if(subject)		Bprint(bout, "/n/t%s", subject);	Bprint(bout, "/n");	free(date);	free(from);	free(subject);}
开发者ID:carriercomm,项目名称:plan9-gpl,代码行数:35,


示例16: buildmap

static voidbuildmap(Biobuf *fp)	/* map goes from char name to value to print via *string() */{    uchar *p, *line, ch[100];    int val;    Rune r;    curmap++;    if(curmap >= NMAP) {        fprint(2, "proof: out of char maps; recompile/n");        exits("charmap");    }    while ((line = Brdline(fp, '/n'))!= 0) {        if (line[0] == '/n')            return;        line[Blinelen(fp)-1] = 0;        scanstr((char *) line, (char *) ch, (char **) &p);        if (ch[0] == '/0') {            fprint(2, "bad map file line '%s'/n", (char*)line);            continue;        }        val = strtol((char *) p, 0, 10);        dprint(2, "buildmap %s (%x %x) %s %d/n", (char*)ch, ch[0], ch[1], (char*)p, val);        chartorune(&r, (char*)ch);        if(utflen((char*)ch)==1 && r<QUICK)            charmap[curmap].quick[r] = val;        else            addmap(curmap, strdup((char *) ch), val);	/* put somewhere else */    }}
开发者ID:grobe0ba,项目名称:plan9front,代码行数:30,


示例17: nextar

/* * look for the next file in an archive. * adapted from libmach. */static vlongnextar(Biobuf *bp, vlong off, struct ar_hdr *a){	int r;	int32 arsize;	char *buf;	if (off&01)		off++;	Bseek(bp, off, 0);	buf = Brdline(bp, '/n');	r = Blinelen(bp);	if(buf == nil) {		if(r == 0)			return 0;		return -1;	}	if(r != SAR_HDR)		return -1;	memmove(a, buf, SAR_HDR);	if(strncmp(a->fmag, ARFMAG, sizeof a->fmag))		return -1;	arsize = strtol(a->size, 0, 0);	if (arsize&1)		arsize++;	return arsize + r;}
开发者ID:TomHoenderdos,项目名称:go-sunos,代码行数:31,


示例18: rdbio

voidrdbio(char *file, char *user, Acctbio *a){	int i,n;	Biobuf *b;	char *p;	char *field[20];	memset(a, 0, sizeof(Acctbio));	b = Bopen(file, OREAD);	if(b != 0){		while(p = Brdline(b, '/n')){			p[Blinelen(b)-1] = 0;			n = getfields(p, field, nelem(field), 0, "|");			if(n < 4)				continue;			if(strcmp(field[0], user) != 0)				continue;			clrbio(a);			a->postid = strdup(field[1]);			a->name = strdup(field[2]);			a->dept = strdup(field[3]);			if(n-4 >= Nemail)				n = Nemail-4;			for(i = 4; i < n; i++)				a->email[i-4] = strdup(field[i]);		}		Bterm(b);	}	a->user = strdup(user);}
开发者ID:Nurb432,项目名称:plan9front,代码行数:33,


示例19: noworld

/* *  see if user is in the group noworld, i.e., has all file *  priviledges masked with 770, and all directories with *  771, before checking access rights */intnoworld(char *user){	Biobuf *b;	char *p;	int n;	b = Bopen("/adm/users", OREAD);	if(b == nil)		return 0;	while((p = Brdline(b, '/n')) != nil){		p[Blinelen(b)-1] = 0;		p = strchr(p, ':');		if(p == nil)			continue;		if(strncmp(p, ":noworld:", 9) == 0){			p += 9;			break;		}	}	n = strlen(user);	while(p != nil && *p != 0){		p = strstr(p, user);		if(p == nil)			break;		if(*(p-1) == ':' || *(p-1) == ',')		if(*(p+n) == ':' || *(p+n) == ',' || *(p+n) == 0){			Bterm(b);			return 1;		}		p++;	}	Bterm(b);	return 0;}
开发者ID:99years,项目名称:plan9,代码行数:40,


示例20: exclusions

voidexclusions(void){	Biobuf *f;	int ni, nmaxi, ne, nmaxe;	char *line;	if(patternfile == nil)		return;	f = Bopen(patternfile, OREAD);	if(f == nil)		fatal("cannot open patternfile");	ni = 0;	nmaxi = 100;	include = malloc(nmaxi*sizeof(*include));	if(include == nil)		fatal("out of memory");	include[0] = nil;	ne = 0;	nmaxe = 100;	exclude = malloc(nmaxe*sizeof(*exclude));	if(exclude == nil)		fatal("out of memory");	exclude[0] = nil;	while(line = Brdline(f, '/n')){		line[Blinelen(f) - 1] = 0;		if(strlen(line) < 2 || line[1] != ' ')			continue;		switch(line[0]){		case '+':			if(ni+1 >= nmaxi){				nmaxi = 2*nmaxi;				include = realloc(include, nmaxi*sizeof(*include));				if(include == nil)					fatal("out of memory");			}			DEBUG(DFD, "/tinclude %s/n", line+2);			include[ni] = regcomp(line+2);			include[++ni] = nil;			break;		case '-':			if(ne+1 >= nmaxe){				nmaxe = 2*nmaxe;				exclude = realloc(exclude, nmaxe*sizeof(*exclude));				if(exclude == nil)					fatal("out of memory");			}			DEBUG(DFD, "/texclude %s/n", line+2);			exclude[ne] = regcomp(line+2);			exclude[++ne] = nil;			break;		default:			DEBUG(DFD, "ignoring pattern %s/n", line);			break;		}	}	Bterm(f);}
开发者ID:99years,项目名称:plan9,代码行数:59,


示例21: main

voidmain(int argc, char *argv[]){	int n;	Biobuf in;	char *p;	char *f[4];	strcpy(mntpt, "/net");	cfg.inside = 1;	ARGBEGIN{	case 'f':		dbfile = EARGF(usage());		break;	case 'r':		cfg.resolver = 1;		break;	case 'x':		dbfile = "/lib/ndb/external";		strcpy(mntpt, "/net.alt");		break;	default:		usage();	}ARGEND	now = time(nil);	nowns = nsec();	dninit();	fmtinstall('R', prettyrrfmt);	if(myipaddr(ipaddr, mntpt) < 0)		sysfatal("can't read my ip address");	opendatabase();	if(cfg.resolver)		squirrelserveraddrs();	debug = 1;	if(argc > 0){		docmd(argc, argv);		exits(0);	}	Binit(&in, 0, OREAD);	for(print("> "); p = Brdline(&in, '/n'); print("> ")){		p[Blinelen(&in)-1] = 0;		n = tokenize(p, f, 3);		if(n>=1) {			dnpurge();		/* flush the cache */			docmd(n, f);		}	}	exits(0);}
开发者ID:npe9,项目名称:harvey,代码行数:55,


示例22: replywindow

voidreplywindow(Article *m){	Biobuf *b;	char *p, *ep, *q, tmp[40];	int fd, copy;	Article *reply;	sprint(tmp, "%d/article", m->n);	p = estrstrdup(dir, tmp);	if((fd = open(p, OREAD)) < 0){		free(p);			return;	}	free(p);	reply = newpost();	winopenbody(reply->w, OWRITE);	b = emalloc(sizeof(*b));	Binit(b, fd, OREAD);	copy = 0;	while(p = Brdline(b, '/n')){		if(Blinelen(b)==1)			break;		ep = p+Blinelen(b);		if(!isspace(*p)){			copy = 0;			if(cistrncmp(p, "newsgroups:", 11)==0){				for(q=p+11; *q!='/n'; q++)					if(*q==',')						*q = ' ';				copy = 1;			}else if(cistrncmp(p, "subject:", 8)==0){				if(!strstr(p, " Re:") && !strstr(p, " RE:") && !strstr(p, " re:")){					p = skip(p, "subject:");					ep[-1] = '/0';					Bprint(reply->w->body, "Subject: Re: %s/n", p);				}else					copy = 1;			}else if(cistrncmp(p, "message-id:", 11)==0){				Bprint(reply->w->body, "References: ");				p += 11;				copy = 1;			}		}		if(copy)			Bwrite(reply->w->body, p, ep-p);	}	Bterm(b);	close(fd);	free(b);	Bprint(reply->w->body, "/n");	winclean(reply->w);	winselect(reply->w, "$", 0);}
开发者ID:carriercomm,项目名称:plan9-gpl,代码行数:55,


示例23: rlogin

/* *  login to remote system */voidrlogin(char *rsys, char *keyspec){	char *line;	char pass[128];	UserPasswd *up;	up = nil;	for(;;){		if(up == nil && os != Plan9)			up = auth_getuserpasswd(auth_getkey, "proto=pass server=%s service=ftp %s", rsys, keyspec);		if(up != nil){			sendrequest("USER", up->user);		} else {			print("User[default = %s]: ", user);			line = Brdline(&stdin, '/n');			if(line == 0)				exits(0);			line[Blinelen(&stdin)-1] = 0;			if(*line){				free(user);				user = strdup(line);			}			sendrequest("USER", user);		}		switch(getreply(&ctlin, msg, sizeof(msg), 1)){		case Success:			goto out;		case Incomplete:			break;		case TempFail:		case PermFail:			continue;		}		if(up != nil){			sendrequest("PASS", up->passwd);		} else {			if(getpassword(pass, pass+sizeof(pass)) < 0)				exits(0);			sendrequest("PASS", pass);		}		if(getreply(&ctlin, msg, sizeof(msg), 1) == Success){			if(strstr(msg, "Sess#"))				defos = MVS;			break;		}	}out:	if(up != nil){		memset(up, 0, sizeof(*up));		free(up);	}}
开发者ID:99years,项目名称:plan9,代码行数:57,


示例24: rdline

staticchar*rdline(Biobuf *b, int *linep){	char *l;	l = Brdline(b, '/n');	if(l)		(*linep)++;	return l;}
开发者ID:AustenConrad,项目名称:plan-9,代码行数:11,


示例25: findfrom

char*findfrom(void){	char *p, *u;	Biobuf *b;	u = getuser();	if(u==nil)		return "glenda";	p = estrstrstrdup("/usr/", u, "/lib/newsfrom");	b = Bopen(p, OREAD);	free(p);	if(b){		p = Brdline(b, '/n');		if(p){			p[Blinelen(b)-1] = '/0';			p = estrdup(p);			Bterm(b);			return p;		}		Bterm(b);	}	p = estrstrstrdup("/mail/box/", u, "/headers");	b = Bopen(p, OREAD);	free(p);	if(b){		while(p = Brdline(b, '/n')){			p[Blinelen(b)-1] = '/0';			if(cistrncmp(p, "from:", 5)==0){				p = estrdup(skip(p, "from:"));				Bterm(b);				return p;			}		}		Bterm(b);	}	return u;}
开发者ID:carriercomm,项目名称:plan9-gpl,代码行数:41,


示例26: threadmain

voidthreadmain(int argc, char *argv[]){	int n;	Biobuf in;	char *p;	char *f[4];	strcpy(mntpt, "/net");	ARGBEGIN{	case 'r':		resolver = 1;		break;	case 'f':		dbfile = EARGF(usage());		break;	default:		usage();	}ARGEND	now = time(0);	dninit();	fmtinstall('R', prettyrrfmt);	if(myipaddr(ipaddr, mntpt) < 0)		sysfatal("can't read my ip address");	opendatabase();	if(resolver)		squirrelserveraddrs();	debug = 1;	if(argc > 0){		docmd(argc, argv);		threadexitsall(0);	}	Binit(&in, 0, OREAD);	for(print("> "); p = Brdline(&in, '/n'); print("> ")){		p[Blinelen(&in)-1] = 0;		n = tokenize(p, f, 3);		if(n<1)			continue;		/* flush the cache */		dnpurge();		docmd(n, f);	}	threadexitsall(0);}
开发者ID:00001,项目名称:plan9port,代码行数:53,


示例27: cat

voidcat(int f, char *s){	Biobuf b;	char *p;	Binit(&b, f, OREAD);	while((p = Brdline(&b, '/n')) != nil)		if(write(1, p, Blinelen(&b)) != Blinelen(&b))			sysfatal("write error copying %s: %r", s);	Bterm(&b);}
开发者ID:Requaos,项目名称:harvey,代码行数:12,


示例28: buildxheight

static voidbuildxheight(Biobuf *fp)	/* map goes from char name to value to print via *string() */{    char *line;    line = Brdline(fp, '/n');    if(line == 0) {        fprint(2, "proof: bad map file/n");        exits("map");    }    charmap[curmap].xheight = atof(line);}
开发者ID:grobe0ba,项目名称:plan9front,代码行数:12,


示例29: okay

intokay(char *quest){	char *ln;	print("okay to %s? ", quest);	if ((ln = Brdline(&bin, '/n')) == nil)		return 0;	ln[Blinelen(&bin)-1] = '/0';	if (isascii(*ln) && isupper(*ln))		*ln = tolower(*ln);	return *ln == 'y';}
开发者ID:Requaos,项目名称:harvey,代码行数:13,


示例30: rdsenders

static intrdsenders(void){	int lnlen, nf, ok = 1;	char *line, *senderfile;	char *toks[Ntoks];	Biobuf *sf;	Sender *snd;	static int beenhere = 0;	if (beenhere)		return 1;	beenhere = 1;	/*	 * we're sticking with a system-wide sender list because	 * per-user lists would require fully resolving recipient	 * addresses to determine which users they correspond to	 * (barring exploiting syntactic conventions).	 */	senderfile = smprint("%s/senders", UPASLIB);	sf = Bopen(senderfile, OREAD);	free(senderfile);	if (sf == nil)		return 1;	while ((line = Brdline(sf, '/n')) != nil) {		if (line[0] == '#' || line[0] == '/n')			continue;		lnlen = Blinelen(sf);		line[lnlen-1] = '/0';		/* clobber newline */		nf = tokenize(line, toks, nelem(toks));		if (nf != nelem(toks))			continue;		/* malformed line */		snd = malloc(sizeof *snd);		if (snd == nil)			sysfatal("out of memory: %r");		memset(snd, 0, sizeof *snd);		snd->next = nil;		if (sendlast == nil)			sendlist = snd;		else			sendlast->next = snd;		sendlast = snd;		snd->rcpt = strdup(toks[Rcpt]);		snd->domain = strdup(toks[Domain]);	}	Bterm(sf);	return ok;}
开发者ID:99years,项目名称:plan9,代码行数:51,



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


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