Возможный дубликат:
есть memset(), который принимает целые числа больше, чем char?
Как видно из объявления memset:
void * memset ( void * ptr, int value, size_t num );
Есть ли способ использовать эту функцию memset (или другую функцию, включенную в библиотеку STL), чтобы вы могли установить для памяти значение типа long long?
Я использую это для инициализации массива длинных длин с большим значением.
Я должен сказать, что я «решил» эту проблему, просто перебирая каждое значение массива и устанавливая его на желаемое значение.
memset()
используется для инициализации значений блока памяти фиксированным значением (по одному байту за раз). Если у вас есть значениеlong long
, которое вы хотите установить, вы можете легко сделать это (безопасность зависит от того, КАК вы это делаете) с помощью приведения (если у вас нет проблем с невыровненным доступом). - person Chad   schedule 25.10.2011