本文主要是介绍模拟实现字符串函数(6):strncat,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.函数介绍
翻译一下:就是当源字符串长度小于num时会只追加源字符串的最大长度,大于num时正常追加
2.思路分析
1.首先将dest的指针保留用于返回,随后遍历到dest的末尾;
2.判断一下num是否大于src的长度,如果小于的话,将src遍历追加完即可。
char* my_strncat(char* dest, char* src, size_t num)
{char* ret = dest;while (*dest){dest++;}//源字符串长度大于numif (strlen(src) >= num){while (num--){*dest++ = *src++;}}else{while (*src != '\0'){*dest++ = *src++;}}return ret;
}int main()
{char str1[30] = "abcdefghij";char str2[] = "aaattttt";my_strncat(str1, str2, 5);printf("%s\n", str1);return 0;
}
这篇关于模拟实现字符串函数(6):strncat的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!