allora nel mio programma questo è il main:
codice:
#include <stdio.h>
#include <stdlib.h>
#include "funzioni.h"
int main()
{
matrice matrice1;
int i,righe,colonne;
matrice1.prox=&matrice1;
matrice1.colonne.prox=&matrice1.colonne;
scanf("%d",&righe);
scanf("%d",&colonne);
creamatrice(&matrice1,righe,colonne);
for(i=0;i<4;i++){
printf("%f ",matrice1.colonne.element);
matrice1.colonne=*matrice1.colonne.prox;}
system("PAUSE");
return 0;
}
questo il file .c con la funzione:
codice:
#include <stdio.h>
#include <stdlib.h>
#include "funzioni.h"
void creamatrice(matrice* matrice1, int righe, int colonne)
{
int count,i;
count=0;
while(count<colonne){
for(i=0;i<2;i++){
matrice1->colonne.element=5;
if(i!=righe-1)
matrice1->colonne = *matrice1->colonne.prox;
else
matrice1->colonne.prox=NULL; }
for(i=2;i<4;i++){
matrice1->colonne.element=2;
if(i!=righe-1)
matrice1->colonne = *matrice1->colonne.prox;
else
matrice1->colonne.prox=NULL; }
matrice1=matrice1->prox; count++; }
}
file .h
codice:
#include <stdio.h>
#include <stdlib.h>
typedef struct A { float element; struct A * prox; } RIGHE;
typedef struct B { RIGHE colonne; struct B * prox; } matrice;
extern void creamatrice(matrice* matrice1, int righe, int colonne);
extern void stampamatrice(matrice *);
extern void scrivielemento(matrice *, float, int, int);
extern float leggielemento(matrice *, int, int);
extern int numerorighe(matrice *);
extern int numerocolonne(matrice *);
ora cm ora il puntatore punta sempre alla stessa struttura mentre io voglio che punti
sempre ad una nuova struttura qnd chiamato...come fare?