Я заметил, что некоторые стандартные библиотечные функции используют void * в качестве своих параметров, например, функция memcpy
, ее прототип:
void * memcpy ( void * destination, const void * source, size_t num );
Есть также функции, использующие char * в качестве своих параметров, дляНапример, функция read
класса ifstream
, ее прототип:
istream& read ( char* s, streamsize n );
Почему стандартная библиотека не объединяет эти параметры, например, все с использованием char * или все с использованием void *.Есть какие-то особые причины?
cheng