⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gdevcnf.c

📁 日本著名的的嵌入式实时操作系统T-Kernel的源码及用户手册。
💻 C
字号:
/* *---------------------------------------------------------------------- *    T-Kernel * *    Copyright (C) 2004 by Ken Sakamura. All rights reserved. *    T-Kernel is distributed under the T-License. *---------------------------------------------------------------------- * *    Version:   1.01.00 *    Released by T-Engine Forum(http://www.t-engine.org) at 2004/6/28. * *---------------------------------------------------------------------- *//* *      gdevcnf.c (sysinit) *      DEVCONF access utilities */#include "sysinit.h"#include <device/devconf.h>#include <sys/sysinfo.h>#include <libstr.h>#define	DevConfPtr	(SCInfo.devconf)LOCAL	B	*SearchDevConf(B *name){	W	len;	B	*p;	len = strlen(name);	if (len > 0) {		if (len > 16) len = 16;		for (p = (B*)DevConfPtr; *p; ) {			if (*p > ' ' && *p != '#' && memcmp(name, p, len) == 0)						return p;			while (*p && *p++ != '\n');		}	}	return	(B*)NULL;}LOCAL	B	*SkipNext(B *p){	for (; *p > ' ' && *p != '#'; p++);	for ( ; ; p++) {		if (*p == '\0' || *p == '\n' || *p == '#') return (B*)NULL;		if (*p > ' ') break;	}	return p;}EXPORT	W	GetDevConf(B *name, W *val){	W	cnt = 0;	B	*p;	if ( (p = SearchDevConf(name)) != NULL ) {		for ( ; (p = SkipNext(p)) && cnt < L_DEVCONF_VAL; cnt++) {			*val++ = (W)strtol(p, &p, 0);		}	}	return cnt;}EXPORT	W	GetDevConfStr(B *name, B *str){	B	*p;	B	*d = str;	if ( (p = SearchDevConf(name)) != NULL ) {		if ( (p = SkipNext(p)) != NULL ) {			while (*p && *p != '\n' && *p != '#') {				*d++ = *p++;				if (d - str >= L_DEVCONF_STR - 1) break;			}		}	}	*d = 0;	return d - str;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -