字串操作函式的模擬實現

2021-09-30 16:48:41 字數 1244 閱讀 1127

包含一些應試需要注意的細節,希望能夠幫助到大家。

感受一下,在字串操作函式中,需要注意的還是要判斷引數是否為空。做判斷時,使用assert()斷言,其用法在下文注釋中標註。再加上指標的簡單應用,其模擬也不難實現。

#include #include //strlen 第一種

int my_strlen(const char* str)//此處const修飾 表示指向的內容不能被改變

int size = 0;

while (*str != '\0')

return size;

}//strlen 第二種實現方式 不允許建立臨時變數

//遞迴

int my_strlen(const char* str)

if (*str == '\0')

return 1 + my_strlen(str + 1);

}char* my_strcpy(char* dest, const char* source)

*/ //assert 斷言中填乙個表示式 如果表示式值為真 斷言通過 無事發生 如果為假 斷言失敗 引起程式奔潰

assert(source != null);

assert(source != null);

char* ret = dest;

while (*source != '\0')

//strcpy 需要拷貝最終的\0

*dest = '\0'; //比較容易遺漏的

return ret;

}//strcat 字串拼接

char* my_strcat(char* dest, const char* src)

my_strcpy(dest, src);

return ret;

}//strstr

char* my_strstr(const char* str1, const cahr* str2)

} return null;

}//strcmp

//memcpy

void* my_memcpy(void* dest, const void* src, size_t num)

return ret;

}//memmove

void* my_memmove(void* dest, const void* src, size_t num)

} else }

return ret;

}

C語言模擬實現字串操作函式

在編寫程式過程中,我們經常使用到一些字串函式,例如求字串長度,拷貝字串 這些函式都在c標準庫中存在,我們可以直接使用。但我們還需要掌握這些函式的實現方法,今天來看看一些常用的字串操作函式的實現方法 1.strlen strlen是用來求字串長度的函式,字串長度就是字串中包含的字元的個數,但是不包含字...

模擬實現字串庫函式

1.strcat 1 函式功能 實現兩個字串的連線 2 思想 首先遍歷目標字串,找到 0 的位址,然後將資源字串通過指標一次一次的拼接在目標字串後面,直到指標走到資源字串的 0 3 char mystrcat char strdestination,const char strsource whil...

字串模擬實現

1.三種方式模擬實現strlen函式。方法1 用計數器模擬實現 define crt secure no warnings include include include include int mystrlen char str return ret int main printf 請輸入字串 n...