易截截图软件、单文件、免安装、纯绿色、仅160KB

C字符串处理函数的实现(Linux)

C字符串处理函数的实现(Linux)
#include <stddef.h>
char * ___strtok = NULL;

char * strcpy(char * dest,const char *src)
{
char *tmp = dest;

while ((*dest++ = *src++) != '\0')
/* nothing */;
return tmp;
}

char * strncpy(char * dest,const char *src,size_t count)
{
char *tmp = dest;

while (count-- && (*dest++ = *src++) != '\0')
/* nothing */;

return tmp;
}

char * strcat(char * dest, const char * src)
{
char *tmp = dest;

while (*dest)
dest++;
while ((*dest++ = *src++) != '\0')
;
return tmp;
}

char * strncat(char *dest, const char *src, size_t count)
{
char *tmp = dest;
if (count) {
while (*dest)
dest++;
while ((*dest++ = *src++)) {
if (--count == 0)
break;
}
}

return tmp;
}
int strcmp(const char * cs,const char * ct)
{
register signed char __res;

while (1) {
if ((__res = *cs - *ct++) != 0 || !*cs++) /*is !*cs++ necessary? incase more cmp*/
break;
}

return __res;
}

int strncmp(const char * cs,const char * ct,size_t count)
{
register signed char __res = 0;

while (count) {
if ((__res = *cs - *ct++) != 0 || !*cs++)
break;
count--;
}

return __res;
}

char * strchr(const char * s,char c)
{
for(; *s != c; ++s)
if (*s == '\0')
return NULL;
return (char *) s;
}

size_t strlen(const char * s)
{
const char *sc;

for (sc = s; *sc != '\0'; ++sc)
/* nothing */;
return sc - s;
}

size_t strnlen(const char * s, size_t count)
{
const char *sc;

for (sc = s; *sc != '\0' && count--;


相关文档:

实战Linux Bluetooth编程(六) L2CAP编程实例

例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
 如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......

Linux 脚本编写基础(二)

1.1.5 Shell命令和流程控制
在shell脚本中可以使用三类命令:
1)Unix 命令:
虽然在shell脚本中可以使用任意的unix命令,但是还是由一些相对更常用的命令。这些命令通常是用来进行文件和文字操作的。
常用命令语法及功能
echo "some text": 将文字内容打印在屏幕上
ls: 文件列表
wc –l filewc -w filewc -c fi ......

Linux主要性能指标监控

1.CPU&进程
 
1.1 top命令
 
top - 20:07:00 up 186 days,  3:47,  3 users,  load average: 0.01, 0.02, 0.00
Tasks:  82 total,   1 running,  80 sleeping,   1 stopped,   0 zombie
Cpu(s):  3.7% us,  0.0% sy,  0.0% ni, ......

基于s3c2410和嵌入式Linux的D/A转换的实现


1 引言
在嵌入式应用系统中,特别是智能仪器、仪表、机电设备及装置控制中,需要使用A/D转换将模拟的电量信号转换为数字信号进行处理,而后再将处理的结果通过D/A转换为模拟量实现对被控过程和对象的控制[1]。
基于ARM920T内核的s3c2410是一款低功耗,高性价比的处理器[2]。这款处理器内部集成了多种控制接口,自带8路1 ......

linux 0.11 内核学习 sched.c,调度进程。


/*
 * 2010-1-21
 * 该文件时内核中有关任务调度的函数程序,其中包含基本函数sleep_on,
 * wakeup,schedule等,以及一些简单的系统调用。同时将软盘的几个操作
 * 函数也放置在这里。
 * 
 * schedule函数首先对所有的任务检查,唤醒任何一个已经得到信号的任务,
 * ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号