Si considerino stringhe definite secondo il seguente formato
"&...&x...x&...&y...y&...&"
dove
&...&
è una sequenza di due o più caratteri &
x...x e y...y
sono sequenze di uno o più caratteri, tutti diversi dal carattere &
Scrivere una funzione che riceve in ingresso un puntatore a una stringa costruita secondo questo formato, e restituisce come risultato due stringhe corrispondenti rispettivamente, alle sottostringhe x...x e y...y della stringa ricevuta in ingresso. Scrivere anche un codice pilota che consenta di verificare la correttezza della funzione
#include<iostream>
#include<string>
using namespace std;
string funzione(char*);
int main()
{
char* s="&&&xx&&yyyy&&";
cout<<funzione(s);
return 0;
}
string funzione(char* s)
{
string p=s;
int l=p.length();
int array[l-1];
int indx=0;
for(int i=0;i<l;i++)
{
if(p.substr(i,1)=="x")
array[indx]=i;
indx++;
}
int a[l-1];
int indice=0;
for(int j=0;j<l;j++)
{
if(p.substr(j,1)=="y")
a[indice]=j;
indice++;
}
return p.substr(array[0],array[l-1]);
return p.substr(a[0],a[l-1]);
}
io ho fatto così mi dà un solo errore nella conversione da char a stringa