在C语言中实现字符串插入可以通过以下步骤:
以下是一个示例代码实现:
#include <stdio.h>
#include <string.h>
void insertString(char *original, char *insert, int index) {
int original_len = strlen(original);
int insert_len = strlen(insert);
int new_len = original_len + insert_len;
char newString[new_len + 1];
// Copy original string up to insertion point
strncpy(newString, original, index);
// Copy insert string
strncpy(newString + index, insert, insert_len);
// Copy remaining original string
strncpy(newString + index + insert_len, original + index, original_len - index);
newString[new_len] = '\0';
strcpy(original, newString);
}
int main() {
char str[50] = "Hello, World!";
char insertStr[] = "C programming ";
insertString(str, insertStr, 7);
printf("Inserted string: %s\n", str);
return 0;
}
在这个示例中,我们定义了一个 insertString
函数,该函数接受原始字符串、需要插入的字符串和插入位置作为参数,并将插入后的字符串保存在原始字符串中。通过调用这个函数,我们将 "C programming " 插入到 “Hello, World!” 的第7个位置,最后输出结果为 “Hello, C programming World!”。