nn sono pratico del c...
ho cominciato quest'anno col c++...

ma forse l'errore sta in questi 2 'if'
codice:
if (v > x[m]) a = rb(v,x+m+1,r); 
if (v < x[m]) b = rb(v,x,r);
...
se li cambi in
codice:
if (v > x[m]) a == rb(v,x+m+1,r); 
if (v < x[m]) b == rb(v,x,r);
??