在 C 語言中,沒有內置的 string
類和方法。但是,我們可以使用字符數組來處理字符串,并使用一些內置函數來實現字符串插入。
下面是一個簡單的示例,演示了如何在 C 語言中使用字符數組實現字符串插入:
#include <stdio.h>
#include <string.h>
void insert_string(char *dest, const char *src, int pos) {
int src_len = strlen(src);
int dest_len = strlen(dest);
// 將 dest 數組向后移動 pos 個位置
for (int i = dest_len; i >= pos; --i) {
dest[i] = dest[i - 1];
}
// 將 src 字符串復制到 dest 數組的指定位置
for (int i = 0; i < src_len; ++i) {
dest[pos + i] = src[i];
}
// 在字符串末尾添加空字符
dest[dest_len + src_len] = '\0';
}
int main() {
char dest[100] = "Hello, ";
const char *src = "World!";
int pos = 7;
insert_string(dest, src, pos);
printf("%s\n", dest); // 輸出 "Hello, World!"
return 0;
}
在這個示例中,我們定義了一個名為 insert_string
的函數,它接受三個參數:一個目標字符數組 dest
,一個要插入的源字符串 src
,以及一個插入位置 pos
。函數的實現很簡單:首先將目標數組向后移動指定的位置,然后將源字符串復制到目標數組的指定位置。最后,在字符串末尾添加空字符以表示字符串的結束。
在 main
函數中,我們創建了一個名為 dest
的字符數組,用于存儲插入后的字符串。我們將要插入的字符串 src
和插入位置 pos
傳遞給 insert_string
函數,并在插入后打印結果。