
用法:#include string.h
功能:把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的‘‘)并添加‘‘.
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
程序修改如下:
# include <iostream>
using namespace std
char* STRNCAT(char*s1,char*s2,int n)
const n=4
int main()
{
char* s1=string1[20]="abcdefok"
char* s2=string2[20]="iiiiiilk"
STRNCAT(s1,s2,n)
cout<<s1<<endl
return 1
}
char* STRNCAT(char*s1,char*s2,int n)
{
for(int i=1i<=ni++)
{
*s1=*s2
*s1++
*s2++
}
return s1
}
C++ 里一个很重要的事实就是当你没有先行定义变量的话,变量所包容的字符串等一切内容在内存中的位置都是无法预测的,此时的赋值 *** 作将被视为非法!还有就是尽量不要使用系统自带的标准函数进行函数定义,虽然说这种情况是被允许的,但有时会发生系统冲突,只是一个工人的变成习惯而已!
希望能对你有帮助。
头文件:#inclue <string.h>strncat()用于将n个字符追加到字符串的结尾,其原型为:
char * strncat(char *dest, const char *src, size_t n)
【参数说明】dest为目标字符串,src为源字符串,n为要追加的字符的数目。
strncat()将会从字符串src的开头拷贝n 个字符到dest字符串尾部,dest要有足够的空间来容纳要拷贝的字符串。如果n大于字符串src的长度,那么仅将src全部追加到dest的尾部。
strncat()会将dest字符串最后的'\0'覆盖掉,字符追加完成后,再追加'\0'。
【返回值】返回字符串dest。
原型char *strcat(char *dest, const char *src)
char * strncat(char *dest, const char *src, size_t n)
strcat把src所指向的字符串(包括“\0”)复制到dest所指向的字符串后面(删除*dest原来末尾的“\0”)。要保证*dest足够长,以容纳被复制进来的*src。*src中原有的字符不变。返回指向dest的指针。
strncat()主要功能是在字符串的结尾追加n个字符。
*** 作字符串的函数strcat与strncat用法基本相同,strncat在最后多了一个形参n,表示只追加第二个字符串的前n个字符(而strcat则是追加第二个字符串的全部字符)。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)