c語言字串庫函式的實現也是筆試題常考的題目,以下**沒有嚴格測試,只是簡單的實現:
//記憶體拷貝函式:字串長度
int strlen(const
char *str)
//字串拷貝
char *strcpy(char *to, const
char *from)//
strncpy(),如果from指向的字元個數少於count,則用'\0'補齊
char *strncpy(char *to, const
char *from
, size_t count)
else
}return
result; }//
memset():把指定記憶體區域的前count個位元組設定成字元c
void * memset(void* buffer, int
c, size_t count)
//查詢字串s中首次出現字元c的位置
char *strchr(char *str, int
c)
//字串連線
char *strcat(char *strdes, const
char *strsrc)
char *strncat(char *strdes, const
char *strsrc, unsigned int
count)
//查詢字串第一次出現的位置
char *strstr(const
char *strsrc, const
char *str)
return
null;
} //
將字串拷貝到新的位置
char *strdup_(char *strsrc)
return
null;
}
//字串比較函式:memcpy(), 拷貝不重疊的記憶體塊
void* memcpy(void* to, const
void* from
, size_t count)
return
result;}//
memmove(), 拷貝重疊或者是不重疊的記憶體塊
void* memmove(void* to, const
void* from
, size_t count)
}//to與from有重疊,從後向前move
else
}return
result;
}
//c標準庫部分源**字串比較
int strcmp(const
char *s, const
char *t)
return (*s - *t);
}
//字串比較(不區分大小寫比較,大寫字母會被對映為小寫字母)
int stricmp(const
char *dst, const
char *src)
else
break
; }
return(ch1 -ch2);
}int strncmp(const
char *s, const
char *t, unsigned int
count)
return(*s - *t);
}
char * __cdecl strcat (char * dst,constchar *src)
int __cdecl strcmp (const
char * src,const
char *dst)
size_t __cdecl strlen (
const
char *str)
char * __cdecl strncat (char * front,const
char *back,size_t count)
int __cdecl strncmp (const
char * first,const
char *last,size_t count)
return( *(unsigned char *)first - *(unsigned char *)last );
}
/*copy src to dest.
*/char * strcpy (char * dest,const
char*src)
while (c != '\0'
);
n = s -src;
(void) check_bounds_high (src +n);
(void) check_bounds_high (dest +n);
return
dest;
}
char * __cdecl strncpy (char * dest,const
char *source,size_t count)
C語言 字串庫函式實現
對於字串,編譯器為我們提供了一些庫函式以方便我們對其的操作,下面我們將對一些常用的字串庫函式進行簡單介紹,並自我實現這些方法。1 strcopy 函式原型 char strcpy char dest,const char src 說明 src和dest所指記憶體區域不可以重疊且dest必須有足夠的空...
C語言字串庫函式的實現
c語言字串庫函式的實現也是筆試題常考的題目,以下 沒有嚴格測試,只是簡單的實現 字串長度 int strlen const char str 字串拷貝 char strcpy char to,const char from strncpy 如果from指向的字元個數少於count,則用 0 補齊 c...
C語言字串庫函式的實現
1.strlen 字串的長度 size t strlen const char str size t strlenbyrecursion const char str size t cdecl strlen const char str 函式庫裡面實現的 2.strcpy 字串拷貝 char str...