C语言之strncat函数

来源:互联网 发布:网络科学导论 pdf 编辑:程序博客网 时间:2024/06/16 00:27

【FROM MSDN && 百科】

原型: char *strncat(char *dest,const char *src,int n);

#include<string.h>

功能:把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。


DEMO:实现自己的strncat函数


#include <stdio.h>#include <conio.h>#include <stdlib.h>#include <assert.h>#include <string.h>#pragma warning(disable:4996)char *mystrncat(char *dest,const char *src,int n);int main(void){char d[20]="Golden Global";char *s="View WinIDE Library";system("cls");    mystrncat(d,s,2);printf("%s\n",d);printf("%d\n",strlen(d));getch();return 0;}char *mystrncat(char *dest,const char *src,int n){     char *strDest=dest; assert((dest!=NULL)&&(src!=NULL)); while(*dest !='\0') { dest++; } while(n && ((*dest++ = *src++)!='\0')) { n--; } *dest='\0'; return strDest;}

DEMO:

#include <stdio.h>#include <conio.h>#include <stdlib.h>int main(void){char d[20]="Golden Global";char *s="View WinIDE Library";system("cls");/* s字符串中只有前n个字符被追加到d字符串,复制过来的s字符串的第一个字符覆盖了d字符串结尾的空字符。s字符串中的空字符及其后的任何字符都不会被复制,并且追加一个空字符到所得结果后面。返回值是d。*/strncat(d,s,5);printf("%d\n",strlen(d));printf("%s\n",d);getch();return 0;}


原创粉丝点击