Originariamente inviato da vip
forse non ho capito...
"da cui si intuisce che l'argomento "count" è il numero degli elementi di dimensione "size" da allocare."
n è il numero degli elementi.. o no?
grazie
I tuoi elemeni sono quelli che io chiamerei righe, i miei sono i caratteri d'ogni riga.
Caratteri che tu ne allochi n per riga, "Caiodark" invece uno solo per riga.
Io ne allocherei, giusto per andare sul sicuro, almeno 1024 per riga.
Ad esempio:
Codice PHP:
/*
* Compiled and tested by MacApp using:
* i686-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5367)
*
* Compilation command, with no errors no warnings:
* $ gcc -Wall -pedantic -ansi main.c
*
* Executed succesfully.
*
*/
#include <stdlib.h>
#include <stdio.h>
#define kNumRow 100
#define kMaxRowLength 1024
int main (void){
char * aRowContainer [kNumRow];
int i;
/* alloco lo spazio per ogni riga */
for (i = 0; i < kNumRow; ++i){
/* alloco kMaxRowLength caratteri per riga */
aRowContainer [i] = (char *) calloc (kMaxRowLength, sizeof (char));
}
/* in ogni riga scrivo qualcosa */
for (i = 0; i < kNumRow; ++i){
if (NULL != aRowContainer [i]){
sprintf (aRowContainer [i], "Sono la riga %d;\n", i + 1);
}
}
/* visualizzo ogni riga */
for (i = 0; i < kNumRow; ++i){
if (NULL != aRowContainer [i]){
printf (aRowContainer [i]);
}
}
/* libero la memoria allocata per ogni riga */
for (i = 0; i < kNumRow; ++i){
if (NULL != aRowContainer [i]){
free (aRowContainer [i]);
aRowContainer [i] = NULL;
}
}
return EXIT_SUCCESS;
}