_aligned_recalloc
Mengubah ukuran blok memori yang dialokasikan dengan _aligned_malloc
atau _aligned_offset_malloc
dan menginisialisasi memori menjadi 0.
Sintaks
void * _aligned_recalloc(
void *memblock,
size_t num,
size_t size,
size_t alignment
);
Parameter
memblock
Penunjuk blok memori saat ini.
number
Jumlah elemen.
size
Ukuran dalam byte dari setiap elemen.
alignment
Nilai perataan, yang harus berupa kekuatan bilangan bulat 2.
Nilai hasil
_aligned_recalloc
mengembalikan penunjuk ke blok memori yang dialokasikan (dan mungkin dipindahkan). Nilai yang dikembalikan adalah NULL
jika ukurannya nol dan argumen buffer tidak NULL
, atau jika tidak ada cukup memori yang tersedia untuk memperluas blok ke ukuran yang diberikan. Dalam kasus pertama, blok asli dibeberkan. Dalam kasus kedua, blok asli tidak berubah. Nilai pengembalian menunjuk ke ruang penyimpanan yang cocok diselaraskan untuk penyimpanan jenis objek apa pun. Untuk mendapatkan pointer ke jenis selain void, gunakan jenis cast pada nilai yang dikembalikan.
Ini adalah kesalahan untuk merealokasi memori dan mengubah perataan blok.
Keterangan
_aligned_recalloc
didasarkan pada malloc
. Untuk informasi selengkapnya tentang menggunakan _aligned_offset_malloc
, lihat malloc
.
Fungsi ini diatur errno
ke ENOMEM
jika alokasi memori gagal atau jika ukuran yang diminta lebih besar dari _HEAP_MAXREQ
. Untuk informasi selengkapnya tentang errno
, lihat errno
, , _sys_errlist
_doserrno
, dan _sys_nerr
. Selain itu, _aligned_recalloc
memvalidasi parameternya. Jika alignment
bukan kekuatan 2, fungsi ini memanggil handler parameter yang tidak valid, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi ini mengembalikan NULL
dan mengatur errno
ke EINVAL
.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Persyaratan
Rutin | Header yang diperlukan |
---|---|
_aligned_recalloc |
<malloc.h> |
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk