Someone
public text v1 · immutablevoid insert_char(char *s, char c, int pos) {
int s_len, i;
char *new_s;
s_len = strlen(s);
new_s = (char*)malloc(sizeof(char) * (s_len + 1));
strncpy(old_s, s, s_len);
new_s[s_len] = '\0';
if (pos < s_len) {
i = pos;
new_s[i] = c;
for (i++; i <= s_len; i++) {
new_s[i] = s[i-1];
}
s[i] = '\0';
}
else {
sprintf(new_s, "%s%c", s, c);
}
free(s);
s = new_s;
}