Определение типов:
typedef int32_t INT32;
typedef uint32_t UINT32;
Имеется функция:
INT32 CopyArrayOfUint32( UINT32* pdwDstArray, UINT32* pdwSrcArray, UINT32 dwAmount )
{
memcpy((void*) pdwDstArray, (void*) pdwSrcArray, dwAmount*sizeof(UINT32));
return (INT32)dwAmount;
}
При ее использовании в другом файле (использование в последней строке):
struct S_BKey
{
UINT32 uFlags;
UINT32* puKey;
UINT32* puSalt;
};
S_BKey* psKey
INT32 auExK[64];
CopyArrayOfUint32( auExK, psKey->puKey, 4 );
Возникает такая ошибка:
error: invalid conversion from ‘INT32* {aka int*}’ to ‘UINT32* {aka unsigned int*}’ [-fpermissive]
case KEY_SIZE_128: CopyArrayOfUint32( auExK, psKey->puKey, 4 );
^
In file included from XXX/XXX.cpp:10:0:
XXXX/XXXX.h:23:7: note: initializing argument 1 of ‘INT32 CopyArrayOfUint32(UINT32*, UINT32*, UINT32)’
INT32 CopyArrayOfUint32( UINT32* pdwDstArray, UINT32* pdwSrcArray, UINT32 dwAmount );
Объясните, пожалуйста, как это можно исправить.
Решение: нужно было привести первый аргумент в функции к UINT32
CopyArrayOfUint32( (UINT32*)auExK, psKey->puKey, 4 );
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
В С есть тип longСогласно: Wiki c-types он занимет в памяти 4 байта, да и диапазон значений у него такой же как и у int
В этом PL/SQL коде есть вот такой код: l_balance:=account_balance(account_id_in)Вот эту строку кода не могу понять
Добрый деньУ меня есть конфигурация XML для Spring Security