alright, i don't think you understood the subtlety of l2r and r2l
Code:
src[] = {1,2,3,4,5, pad.....}
dest= src + 3;
l2r:
for ( i = 0; i < 5; )
dest[i] = src[i];
result:
dest[] = {1,2,3,1,2,3,1,2, pad if any}
r2l:
for ( i = n; i--; )
dest[i] = src[i];
result:
dest[] = {1,2,3,1,2,3,4,5, pad if any}
see? one just does not suffice for the other. i want to effect of the second loop. the inverse applies to the other r2l. does memmove do this? how i can i be sure? i know it's too hardware specific. so if there's any library that brings this feature higher-up to the surface it would be very nice.