si tengo el nombre de un fichero guardado en char *nombreFichero:
como hago para quitar todo el path?
A que te refieres con "quitar todo el path"?
Si lo que queres es tomar solamente el nombre del fichero, en UNIX hay
una funcion para eso, a lo mejor en Windows tambien.
y como creo una copia de ese fichero en otro directorio y le cambio el nombre?
Creas un nuevo fichero con el nombre deseado, haces un while donde lees X bytes y los imprimes en el nuevo fichero, hasta que no haya nada mas que copiar.
Las funciones a estudiar son:
PD: Si olvida preguntar algo y nadie a respondido, no crees un nuevo mensaje, edita el ya creado.