Visual Studio C++: error C2440: '=' : cannot convert from 'void *' to ... |
Написал microsin | |
20.04.2009 | |
Ругань началась при попытке компиляции c-кода в cpp-проекте на строку *HidDevices = calloc (*NumberDevices, sizeof (HID_DEVICE)):
Причина - переменная *HidDevices имела тип PHID_DEVICE, а calloc возвращает тип void *. Дело в том, что в проекте CPP компилятор более строго проверяет соответствие типов, чем в проекте на чистом C. Вариантов решения 2 - либо поменять тип проекта (с CPP на чистый C), либо применить явное преобразование типа, например так: Решение проблемы было найдено на http://winprog.org/tutorial/errors.html |