utils.c

来自「Compex BIOS for SAMSUNG S3C4510B v1.20-l」· C语言 代码 · 共 107 行

C
107
字号
#include "utils.h"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;}void * memcpy(void *dest, const void *src, size_t count){	char *tmp = (char *)dest, *s = (char *)src;		while (count--)		*tmp++ = *s++;	return dest;}void * memset(void *s, int c, size_t count){	char *xs = (char *)s;	while (count--)		*xs++ = c;	return s;}void * memmove(void *dest, const void *src, size_t count){	char *tmp, *s;	if (dest <= src) {		tmp = (char *)dest;		s = (char *)src;		while (count--)			*tmp++ = *s++;	} else {		tmp = (char *)dest + count;		s = (char *)src + count;		while (count--)			*--tmp = *--s;	}	return dest;}unsigned short ntohs(unsigned short s){	return (s >> 8) | (s << 8);}unsigned long ntohl(unsigned long l){	return  ((l >> 24) & 0x000000ff) |		((l >>  8) & 0x0000ff00) |		((l <<  8) & 0x00ff0000) |		((l << 24) & 0xff000000);}unsigned short htons(unsigned short s){	return (s >> 8) | (s << 8);}unsigned long htonl(unsigned long l){	return  ((l >> 24) & 0x000000ff) |		((l >>  8) & 0x0000ff00) |		((l <<  8) & 0x00ff0000) |		((l << 24) & 0xff000000);}unsigned long strtoul(char *s, char **endptr, int radix){	unsigned long ret;	int i;	ret = 0;	while (*s != '\0') {		if (*s >= '0' && *s <= '9')			i = *s - '0';		else if (*s >= 'a' && *s <= 'f')			i = *s - 'a' + 0xa;		else if (*s >= 'A' && *s <= 'F')			i = *s - 'A' + 0xa;		else			break;		if (i >= radix)			break;		ret = (ret * radix) + i;		s++;	}	return ret;}

⌨️ 快捷键说明

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