typedef unsigned char Byte;
...
void ReverseBytes( void *start, int size )
{
Byte *buffer = (Byte *)(start);
for( int i = 0; i < size / 2; i++ ) {
std::swap( buffer[i], buffer[size - i - 1] );
}
}
То, что этот метод делает прямо сейчас, - это обращение байтов в памяти. Я хотел бы знать, есть ли лучший способ получить тот же эффект? Вся часть "size / 2" кажется плохой, но я не уверен.
РЕДАКТИРОВАТЬ: Я только что понял, насколько плохим был заголовок для этого вопроса, поэтому я [надеюсь] исправил его.