Unfortunately, this Code seems to prints something before it prints the actual text. What is this? And why is it printed?
"\300\367\277\357\376"
I realized this more often in my code and I am sure it implies I have done something wrong.
char* concat(const char *s1, const char *s2);
int main(int argv, char* args[]){
    char lastchars[50];
    char *buf;
    while(1){
        gets(lastchars);
        if(strlen(lastchars) == 0)break;
        buf = concat(buf, lastchars);
    }
    printf("%s",buf);
 }
 char* concat(const char *s1, const char *s2)
 {
    char *result = malloc(strlen(s1) + strlen(s2) + 1); 
    strcpy(result, s1);
    strcat(result, s2);
    return result;
 }
 
    