strcat函数

xiaoxiao2021-02-28  94

函数功能:将两个char类型链接。 char d[20] = “GoldenGlobal”; char *s = “View”; strcat(d, s); 结果放在d中 printf(“%s”, d); 输出d为GoldenGlobalView(中间无空格) 注意:d和s所指内存区域不可以重叠且d必须有足够的空间来容纳s的字符串。返回指向d的指针。 c函数中,原型为: extern char *strcat(char *dest, char *src);

用法如下: #include

// strcat_test.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" //#include <string> char* strcat(char* strDest, const char* strSrc) { //后文return address,故不能放在assert断言之后声明address char* address = strDest; assert((strDest!=NULL)&&(strSrc!=NULL)) //对源地址和目的地址加非0断言 while(*strDest) //是while(*strDest != '\0')的简化形式 { //若使用while(*strDest++),则会出错,因为循环结束后strDest还会执行一次+ //那么strDest将指向'\0'的下一个位置。所以要在循环体内++,因为要使*strDest //最后指向该字符串的结束标志'\0' strDest++; } while(strDest++ = *strSrc++) { NULL;//该循环条件内可以使用++ }//此处可以加语句*strDest= '\0';无必要 return address;//为了实现链式操作 } //另一种实现方法 char *mystrCat(char *dst, const char *src) { char *p = dest;//下面的操作会改变目的指针指向,先定义一个指针记录dst while(*dst != '\0')dst++; while(*src != '\0')*dst++ = *src++; *dst = '\0' return p; }
转载请注明原文地址: https://www.6miu.com/read-53720.html

最新回复(0)