Prova questo, sicuramente c'è di meglio, ma ora mi è venuto così

codice:
  char* s = "titolo= Titolo & autore= Autore";    /*  La tua stringa */
  char* p = strdup(s);                            /*  Copiamo la stringa siccome la modifichiamo e ricordiamoci
                                                      di deallocare la memoria allocata da strdup                */
  char* s1 = strchr(p,'&');                       /*  Troviamo il carattere & e lo sostituiamo con '\0'  */
  s1[0] = '\0';
  char* titolo = strchr(p,'=')+1;                 /*  Prendiamo la stringa a partire da = fino al terminatore  */
  delete[] p;
  char* autore = strrchr(s,'=')+1;                /*  Prendiamo la stringa a partire dall'ultimo carattere =  */


Max