fork download
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdlib.h>
  4.  
  5. char *replacefilename(const char **argv,char *s)
  6. {
  7. char *p = strrchr(*argv,'/');
  8. if(!p) p = strrchr(*argv,'\\');
  9. if(!p) return 0;
  10. *s=0;
  11. strncat(s,*argv,p-*argv+1);
  12. return strcat(s,argv[1]);
  13. }
  14.  
  15. int main(void) {
  16. const char *a[]={"/foo/bar","baz"}; void*p;
  17. puts(replacefilename(a,p=malloc(1+strlen(a[0])+strlen(a[1]))));
  18. free(p);
  19. return 0;
  20. }
  21.  
Success #stdin #stdout 0s 2288KB
stdin
Standard input is empty
stdout
/foo/baz