Bugün sayfasına ulaştığı 167 arasında Dili (ikinci baskısı Brian W. Kernighan & Dennis M. Ritchie) Programlama C ve yazar yayınlayabileceğim gerektiğini söylüyor bulundu malloc
. İşte kitabın bölümü:
7.8.5 Depolama Yönetimi
Malloc ve calloc işlevleri bellek bloklarını dinamik olarak alır.
void *malloc(size_t n)
başlatılmamış depolama alanının n baytına bir işaretçi veya istek yerine getirilemezse NULL değerini döndürür.
void *calloc(size_t n, size_t size)
belirtilen boyuttaki n nesneden oluşan bir dizi için yeterli boş alana veya istek yerine getirilemiyorsa NULL döndürür. Depolama alanı sıfırlanır. Malloc veya calloc tarafından döndürülen işaretçi, söz konusu nesne için uygun hizalamaya sahiptir, ancak olduğu gibi uygun türe dönüştürülmelidir.
int *ip; ip = (int *) calloc(n, sizeof(int));
Zaten biliyorum ki malloc
(ve ailesi) tip void * döndürüyor ve neden dökülmemek için iyi açıklamalar varmalloc
.
Ama sorum şu: Kitap neden yayınlamam gerektiğini söylüyor?
malloc
çünkü C ++ DEĞİL - yapmanız gerekenler hariç - ama yapmamalısınız - hariç ... AGGGHHHHHH !!!!! :-)