Matrix in c
Geplaatst: ma 31 mar 2008, 18:28
Ik probeer een matrix met floats te maken, waarvan de waardes uitgelezen worden uit een tekstbestand. Nou heb ik een stukje code gekregen waar ik mee verder zou moeten kunnen, maar hij compileerd niet. Ik krijg de foutmelding "called object is not a function". Dit is het stukje code:
Er zijn ook een paar dingen die ik niet begrijp:
- Waarom staat in deze regel: "(matrix)[k]=number;//fill matrix"
"matrix" tussen haakjes?
- Wat doet deze regel nou eigenlijk?:
"*matrix = (float **) malloc (nr_rows*sizeof(float *));"
Code: Selecteer alles
char data[1000];
float **matrix;
*matrix = (float **) malloc (nr_rows*sizeof(float *)); //allocate memory for every row in matrix
i=1;
while (i <= nr_rows)
{
fgets(data, 1000, file);
printf("Line %d: %s\n\n",i,data);
char *number = strtok(data," ");
float num=0;
while (number != NULL)
k=0; //second index for the matrix
{
printf ("%s\n",number);
num = atof(number);
printf("num: %1.1f\n",num)
(matrix)[i][k]=number;//fill matrix
number = strtok (NULL, " ");
k++;
}
i++;
}
- Waarom staat in deze regel: "(matrix)[k]=number;//fill matrix"
"matrix" tussen haakjes?
- Wat doet deze regel nou eigenlijk?:
"*matrix = (float **) malloc (nr_rows*sizeof(float *));"