C語言筆試題(18)——strcat函數實現

原型

  extern char *strcat(char *dest,char *src);

用法

  #include <string.h>  在C++中,則存在於<cstring>頭文件中。

功能

  把src所指字符串添加到dest結尾處(覆蓋dest結尾處的'\0')並添加'\0'。

說明

  src和dest所指內存區域不可以重疊且dest必須有足夠的空間來容納src的字符串,

       返回指向dest的指針。


#include <stdio.h>
#include <assert.h>

char *strcat(char *dst, const char *src)
{
    char *str = dst;

    assert(dst != NULL && src != NULL);

    while(*dst++ != '\0')
        ;

    dst--;

    while((*dst++ = *src++) != '\0')
        ;

    return str;
}

int main(int argc, const char *argv[])
{
    char dst[20] = "hello";
    char src[] = "world";
    char *str;

    str = strcat(dst, src);

    printf("%s\n", str);

    return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章