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

📄 string.c

📁 美国mit操作系统课程所用的一个教学操作系统xv6
💻 C
字号:
#include "types.h"void*memset(void *dst, int c, uint n){  char *d;  d = (char*)dst;  while(n-- > 0)    *d++ = c;  return dst;}intmemcmp(const void *v1, const void *v2, uint n){  const uchar *s1, *s2;    s1 = v1;  s2 = v2;  while(n-- > 0){    if(*s1 != *s2)      return *s1 - *s2;    s1++, s2++;  }  return 0;}void*memmove(void *dst, const void *src, uint n){  const char *s;  char *d;  s = src;  d = dst;  if(s < d && s + n > d){    s += n;    d += n;    while(n-- > 0)      *--d = *--s;  } else    while(n-- > 0)      *d++ = *s++;  return dst;}intstrncmp(const char *p, const char *q, uint n){  while(n > 0 && *p && *p == *q)    n--, p++, q++;  if(n == 0)    return 0;  return (uchar)*p - (uchar)*q;}char*strncpy(char *s, const char *t, int n){  char *os;    os = s;  while(n-- > 0 && (*s++ = *t++) != 0)    ;  while(n-- > 0)    *s++ = 0;  return os;}// Like strncpy but guaranteed to NUL-terminate.char*safestrcpy(char *s, const char *t, int n){  char *os;    os = s;  if(n <= 0)    return os;  while(--n > 0 && (*s++ = *t++) != 0)    ;  *s = 0;  return os;}intstrlen(const char *s){  int n;  for(n = 0; s[n]; n++)    ;  return n;}

⌨️ 快捷键说明

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