#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
void Replace(char* dest, const char* src, const char* old, const char *new);
 
int main(void){
    char src[3072] = "Das ist eine faß faß Beute.";;
    char dest[3072] = "";
    char old[] = "ß";
    char new[] = "ss";
    Replace(dest, src, old, new);
    puts(dest);
 
   
    return 0;
}
 
void Replace(char* dest, const char* src, const char* old, const char *new){
    // char *origin = src;
    char *pos = strstr(src, old);
    while (pos)
    {
        strncpy(dest, src, pos - src);
        dest += pos - src;
        dest += sprintf(dest, new, old);
        src = pos;
        src += strlen(old);
        pos = strstr(src, old);
        //origin = src;
    }
    strcpy(dest, src);
}