字串相關函式的實現

2021-06-29 03:22:51 字數 1547 閱讀 9573

#include#includeusing namespace std;

/** 字串相關函式

*/char *mystrcpy(char *dest, const char *src)

char *mystrncpy(char *dest, const char*src, size_t count)

return ret;

}char *mystrcat(char *dest, const char *src)

while( (*dest++ = *src++) != '\0' )

/*nothing*/;

return ret;

}char *mystrncat(char *dest, const char *src, size_t count)

while( (*dest++ = *src++) != '\0')

}} return ret;

}int mystrcmp(const char *str1, const char *str2)

return c1>c2 ? 1:-1;

} return count;

}int mystrncmp(const char *str1, const char *str2, size_t num)

return c1>c2 ? 1:-1;

} return count;

}size_t mystrlen(const char *str)

//思路將所有型別都轉化為char* 然後再依次進行拷貝

void *mymemset(void *dest, int val, size_t count)

return dest;

}//不能解決自身拷貝重疊時的問題

void *mymemcpy(void *dest, const void *src, size_t count)

return dest;

}//memcpy的增強版 解決了拷貝自身重疊的問題

void* mymemmove(void *dest, const void *src, size_t count)

else }

return dest;

}//測試用例

int main(void)

; /*mystrcpy(dest, src);

cout

cout

cout

cout

cout

cout

cout

cout

}

程式設計實現字串相關函式

在c語言中,字串是以 0 結尾的,這一原因也導致了字串相關操作比較繁瑣,比如字串拼接,只能通過呼叫函式來得以實現,沒有整型相關計算便捷。但是為了更好的理解這些字串函式的本質,我們可以自己編寫一些程式,讓自己能夠更透徹的理解字串相關操作。畢竟有些事情,如果我們改變不了,嘗試著去適應也是一種積極的生活態...

字串相關函式

strcmp 比較字串 strcmpi 忽略大小寫比較字串 upper 轉換為大寫 blanks 產生空字串 strmatch 查詢匹配的字串 strjust 對齊字元陣列,包括左對齊,右對齊和居中 strrep 替換字串 strncmp 比較字串的前n個字元 lower 轉換為小寫 deblank...

字串相關函式

1.模擬實現strcpystrcpy str1,str2 函式是把從str2位址開始且含有null結束符的字串複製到以str1開始的位址空間中,而且str2和str1所指記憶體區域不可以重疊。這就要求str1必須有足夠的空間來容納str2的字串。模擬實現strcpy 0 也會被拷貝進去,返回值為ch...