Je possède ce type:C++ Casting Type: erreur C2440: '=': ne peut pas convertir 'short *' à 'DCTBLOCK'
typedef short DCTELEM;
typedef DCTELEM DCTBLOCK[64];
Tableau de dernier type et un pointeur vers un tableau malloc de courts métrages:
DCTBLOCK MQUAD;
short * ptrArray;
J'ai besoin de MQUAD pour parier sur un emplacement spécifique pointé par ptrArray;
Dans CI serait prolly écrire quelque chose comme
MQUAD = ptrArray + 3 * 2;
et ont MQUAD après pointant vers un emplacement nécessaire, mais je reçois
erreur C2440: '=': ne peut pas convertir « court * 'à' DCTBLOCK '
en C++, parce que je sais qu'il y a une différence dans un type de tableau et un pointeur vers un certain type.
MQUAD est une variable de tableau, pas une variable de pointeur. Vous ne pouvez pas lui affecter une valeur de pointeur. Si Anton veut que MQUAD pointe vers un emplacement à l'intérieur des courts métrés qui sont pointés par la variable ptrArray, alors MQUAD doit être déclaré comme DCTELEM * ou short * pour commencer. –
@Remy Lebeau: En effet, tout à fait raison. Je vais mettre à jour ma réponse. –
Oui, totalement rigth, j'ai juste réalisé, 1 minutes avant d'ouvrir cette fenêtre :). – Anton