Partager via


_aligned_realloc

Modifie la taille d'un bloc de mémoire alloué avec _aligned_malloc ou _aligned_offset_malloc.

void * _aligned_realloc(
   void *memblock, 
   size_t size, 
   size_t alignment
);

Paramètres

  • [in] memblock
    le pointeur actuel de bloc de mémoire.

  • [in] size
    la taille de l'allocation de mémoire demandée.

  • [in] alignment
    La valeur d'inscription, qui doit être une puissance entière à 2.

Valeur de retour

_aligned_realloc retourne un pointeur void (et éventuellement déplacé) au bloc de mémoire réaffecté.La valeur de retour est NULL si la taille est zéro et l'argument de mémoire tampon n'est pas NULL, ou s'il n'y a pas assez de mémoire libre pour développer le bloc à la taille donnée.dans le premier cas, le bloc d'origine est libéré.Dans le deuxième, le bloc d'origine reste inchangé.Les points de valeur de retour à un espace de stockage qui est obligatoirement aligné pour le stockage d'un type d'objet.Pour obtenir un pointeur vers un type autre que le type void, utilisez un cast de type sur la valeur de retour.

Il s'agit d'une erreur à réallouer de la mémoire et pour modifier l'alignement d'un bloc.

Notes

_aligned_realloc est basé sur malloc.Pour plus d'informations sur l'utilisation _aligned_offset_malloc, consultez malloc.

Cette fonction définit errno à ENOMEM si l'allocation de mémoire a échoué ou si la taille demandée est supérieure à _HEAP_MAXREQ.Pour plus d'informations sur errno, consultez errno, _doserrno, _sys_errlist, et _sys_nerr.en outre, _aligned_realloc valide ses paramètres.Si alignment n'est pas une puissance de 2, cette fonction appelle le gestionnaire de paramètre non valide, comme décrit dans Validation des paramètres.Si est autorisé à l'exécution de se poursuivre, retourne NULL de cette fonction et définit errno à EINVAL.

Configuration requise

routine

en-tête requis

_aligned_realloc

<malloc.h>

Exemple

Pour plus d'informations, consultez _aligned_malloc.

Voir aussi

Référence

Alignement de données