|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Apr 2006
Messaggi: 926
|
[C] ... tra CALLOC e MALLOC non ci sto capendo niente .. mi date una mano ?
ho le idee molto ma molto confuso su calloc e malloc .. mi date una mano a capire ..
come usarle ? quando usarle ? perchè usarle ? se nn si usano che succede ? ecco un esempio del prof che nn ho ben capito : int *leggiNvalori (int numval) { int *A, i; A = calloc(numval, sizeof(int)); for (i=0; i<numval; i++) { printf(“Inserire valore (%d): “, i); scanf(“%d”, &A[i]); } return A; }
__________________
Intel COre 2 Duo E5200 2.5Ghz 2Mb - Arctic Cooling Freezer 7PRO PWM 775 - ASROCK 775 P43R1600Twins-110dB - ATI HD4850 Gainward Golden Sample 512MB - DDR2 800Mhz 4GB CORSAIR TWIN2X KIT CL5 rt. (2x2GB) - COOLERMASTER Elite 330 Midi Black - ARCTIC COOLING Fan 12 PWM rt 120x120 - Corsair CMPSU-450VXEU 450W - SEAGATE 500GB ST3500320AS 7200rpm 32MB 7200.11 - DVD-RW Pioneer DVR-216D-BK Nero SATA - ASUS LCD 22" VW222U 2ms |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
In ordine:
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Mar 2005
Città: ~
Messaggi: 740
|
se il tuo prof insegna così siamo a posto...
http://www.lilik.it/~mirko/gapil/gapilsu22.html bisogna testare che la variabile puntatore risultato della calloc/malloc sia diversa da NULL prima del suo reale utilizzo. Semmai ti dovesse ritornare un null, allora i segmentation fault saranno i tuoi più cari nemici ![]() oltre alla prima differenza data da daniele88, la calloc inizializza a 0 la memoria, la malloc no. In quest'ultimo caso dovresti (se ti serve) fare un memset a 0 della memoria allocata. ah, mi raccomando, ricordati di disallocare con "free" la memoria allocata con calloc/malloc quando non ti serve più, altrimenti incorri in memory leak. http://it.wikipedia.org/wiki/Memory_leak
__________________
Ciao ciao cagnolino Billy ![]() ![]() ![]() MacMini late 2009, 2.53GHz, 4GB ram, 320GB hard disk, Snow Leopard 10.8.2 - iPod Nano 6th gen. XBOX Live GamerTag: InsaneMau |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:31.