bilibiliclass51_C語言_strncat 指定個數的字串追加-函式詳解
阿新 • • 發佈:2020-12-24
技術標籤:C語言_嗶哩嗶哩課堂筆記
strncat
指定個數的字串追加
庫函式內的宣告
char * strncat ( char * destination, const char * source, size_t num );
簡單例子
#include <stdio.h> #include <string.h> int main () { char arr1[20]="hello\0xxxxxxx"; char arr2[]="world"; strncat(arr1,arr2,8); printf("%s",arr1); return 0; } //記憶體:helloworld\0xx //結果:helloworld
使用:
1.自動追加\0
2.如果num>源字串,則追加完後就補\0,之後不變
my_strncat實現方法
#include <stdio.h> #include<assert.h> char* my_strncat(char* dest, const char* source,int num) { assert(dest != NULL); assert(source != NULL); char* ret = dest; while (*dest != '\0') { dest++; } while (num && (*dest++ = *source++)) { num--; } return ret; } int main() { char arr1[20] = "hello\0xxxxxxx"; char arr2[] = "world"; my_strncat(arr1, arr2, 8); printf("%s", arr1); return 0; }