模擬實現字串函式strlen , strcpy ,strcmp
字串操作函式:
strlen的實現:
(方式1:計數器方式)
int my_strlen(const char * str)
{
int count = 0;
while(*str)
{
count++;
str++;
}
return count;
}
strcpy函式的實現:
char *my_strcpy(char *dest,const char *src)
{
char *ret = dest;
assert(dest != NULL);
assert(src != NULL);
while (*dest++ = *src++){
;
}
return ret;
}
strcmp函式的實現:
int my_strcmp(const char *src,const char* dst)
{
int ret = 0;
assert(src != NULL);
assert(dst != NULL);
while (!(ret = *(unsigned char*)src - *(unsigned char *)dst) && *dst)
++src, ++dst;
if (ret < 0)
ret = -1;
else if (ret>0)
ret = 1;
return ret;
}
strcat函式和strstr函式監下一篇
字串函式strlen的其他實現方式:
//方式2:
//不能建立臨時變數計數器
int my_strlen(const char * str)
{
if(*str == '\0')
return 0;
else
return 1+my_strlen(str+1);
}
//方式3:
//指標-指標的方式
int my_strlen(char *s)
{
char *p = s;
while(*p != ‘\0’ )
p++;
return p-s;
}
相關文章
- strlen strcat strcpy strcmp 自己實現
- strlen函式的模擬實現函式
- 用C語言寫strcat、strcpy、strlen、strcmpC語言
- memmove和memcpy 以及strcmp strcpy幾個庫函式的實現memcpy函式
- 每天一個 PHP 語法三字串函式 strcmp、strlen 使用及實現PHP字串函式
- C語言-字串函式的實現(一)之strlenC語言字串函式
- 實現C中的strcpy函式函式
- 三種方法實現strlen函式函式
- javascript模擬實現函式過載JavaScript函式
- c語言與字串相關的庫函式的模擬實現C語言字串函式
- 模擬實現不受限制的字串函式--C語言版字串函式C語言
- strlen函式函式
- strcpy函式原型函式原型
- 【C語言】字串複製。(不能使用strcpy函式)C語言字串函式
- js模擬實現replaceAll()函式程式碼例項JS函式
- 細節解析 JavaScript 中 bind 函式的模擬實現JavaScript函式
- strcpy函式和memcpy函式的區別函式memcpy
- C++中strlen函式C++函式
- strcpy,strncpy,memcpy,memmove,memset函式memcpy函式
- PHP內建字串函式實現PHP字串函式
- 字串相關函式的實現字串函式
- 虛擬函式的實現原理函式
- 虛擬函式實現原理(轉)函式
- strcmp()函式,如果兩個字串引數相同,該函式就返回0,否則返回非零值函式字串
- c++字串查詢函式實現C++字串函式
- [PHP原始碼閱讀]strlen函式PHP原始碼函式
- strcmp的遞迴實現遞迴
- Vue響應式原理與模擬實現Vue
- HttpServletRequestWrapper模擬實現分散式SessionHTTPServletAPP分散式Session
- js模擬實現alert()函式彈出警告視窗效果程式碼例項JS函式
- 微軟實現字串函式的一個BUG (轉)微軟字串函式
- 65.C指標---sizeof()函式和strlen()函式常見考指標函式
- 【C語言】常用的字串函式及相關函式的自我實現C語言字串函式
- promise的模擬實現Promise
- javascript模擬實現replaceAll()JavaScript
- 用虛擬函式實現事件驅動! (轉)函式事件
- C語言-字串函式的實現(五)之strstrC語言字串函式
- Go 實現字串首字母大、小寫函式Go字串函式