Liste

di il
2 risposte

Liste

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

struct nodo{
   int num;
   struct Nodo *next;
};

typedef struct nodo Nodo;
Nodo * leggi_lista(void);
void visualizza_lista(Nodo *);
int main(){
    /**
    Scrivere una funzione che inserisce un nodo in testa alla lista. Utilizzare la funzione per
    popolare una lista di numeri interi positivi inseriti dall'utente. L'acquisizione termina
    quando il valore inserito è negativo.
    **/
    Nodo *p, *r, *q;
    p=leggi_lista();
    r=NULL;
    while(p != NULL) {
        q = malloc(sizeof(Nodo));
        q->num = p->num;
        q->next = r;
        r = q;
        p = p->next;
    }
    visualizza_lista(r);
    return 0;
}

void visualizza_lista(Nodo *p){
    printf("Inizio lista ---> ");
    while(p != NULL){
        printf("%d ---> ", p->num);
        p = p->next;
    }
    printf("Fine lista\n");
}

Nodo *leggi_lista(void) {
    Nodo *p, *punt;
    punt = NULL;
    while(p->num>=0){
        p = malloc(sizeof(struct nodo));
        printf("Digitare numero da inserire nella lista: ");
        scanf("%d", &p->num);
        p->next = punt;
        punt = p;
    }
    return(punt);

}

Il programma funziona bene però mi da 4 warning che non capisco
Alle righe 25 27 37 49 mi da "warning: assignment from incompatible pointer type"

2 Risposte

  • Re: Liste

    Dobbiamo contare le righe o ci dici esattamente quali sono?
  • Re: Liste

    oregon ha scritto:


    Dobbiamo contare le righe o ci dici esattamente quali sono?
    Ops, scusa lol
    comunque ho gia risolto da solo
    bastava modificare nella struttura e mettere "Nodo" minuscolo
Devi accedere o registrarti per scrivere nel forum
2 risposte