#include <stdio.h>
#include <string.h>
#include <stdlib.h>

char *replacefilename(const char **argv,char *s)
{
	char *p = strrchr(*argv,'/');
	if(!p) p = strrchr(*argv,'\\');
	if(!p) return 0;
	*s=0;
	strncat(s,*argv,p-*argv+1);
	return strcat(s,argv[1]);
}

int main(void) {
	const char *a[]={"/foo/bar","baz"}; void*p;
	puts(replacefilename(a,p=malloc(1+strlen(a[0])+strlen(a[1]))));
	free(p);
	return 0;
}
