[RISOLTO] Errore compilazione [C]

di il
6 risposte

[RISOLTO] Errore compilazione [C]

Ciao a tutti,
quando compilo il mio programma mi da questi errori: " 'swap'may be used uninitialized in this function" " 'bubble'may be used uninitialized in this function" nelle due righe che ho indicato nel codice, a cosa è dovuto il warning visto che sopra li inizializzo? Grazie.
Lista ordina_lista(Lista *p_lista)
{
	Lista *bubble, *swap;
	nodo = *p_lista;
    	if ( !nodo && !nodo->next) 
		return nodo;
   
    	int scambio;
  	
	   
    	do
   	{
        	scambio = 0;
       
        	/*il primo è speciale*/
        	if ( nodo->reale > nodo->next->reale )
        	{
            		scambio =! scambio;
            		/*tolgo dalla lista il secondo elemento*/
            		*bubble = nodo->next;                <----------------------------
            		nodo->next = (*bubble)->next;
            		/*metto l'elemento tolto in testa alla lista*/
            		(*bubble)->next = nodo;
            		nodo = *bubble;
       		}
        	/*tutti gli altri confronto il sucessivo con il sucessivo sucessivo
        	in questo modo non perdo il riferimento al precedente*/
        	for(*bubble = nodo; (*bubble)->next->next; *bubble = (*bubble)->next)
        	{
            		if ( (*bubble)->next->reale > (*bubble)->next->next->reale )
            		{
                		if ( !scambio ) scambio =! scambio;
            
                	/*tolgo dalla lista l'elemento sucessivosucessivo*/
 			*swap = (*bubble)->next->next;       <-------------------------------
                        (*bubble)->next->next = (*swap)->next;
                	/*swappo*/
                	(*swap)->next = (*bubble)->next;
                	(*bubble)->next = *swap;
            		}       
        	}
    	}while(scambio);
   
    	return nodo;
}

6 Risposte

  • Re: [RISOLTO] Errore compilazione [C]

    Veramente io l'inizializzazione non la vedo... Comunque basta aggiungere =NULL quando li dichiari e dovrebbe andare a posto.
  • Re: [RISOLTO] Errore compilazione [C]

    minomic ha scritto:


    Veramente io l'inizializzazione non la vedo...

    Questa non va bene?
    Lista *bubble, *swap;
  • Re: [RISOLTO] Errore compilazione [C]

    ofcar ha scritto:


    minomic ha scritto:


    Veramente io l'inizializzazione non la vedo...

    Questa non va bene?
    Lista *bubble, *swap;
    No, quella è una dichiarazione! Aggiungi =NULL e dovrebbe essere tutto ok.
  • Re: [RISOLTO] Errore compilazione [C]

    minomic ha scritto:


    ofcar ha scritto:


    minomic ha scritto:


    Veramente io l'inizializzazione non la vedo...

    Questa non va bene?
    Lista *bubble, *swap;
    No, quella è una dichiarazione! Aggiungi =NULL e dovrebbe essere tutto ok.
    Ah ok grazie, adesso va
  • Re: [RISOLTO] Errore compilazione [C]

    ofcar ha scritto:


    Ah ok grazie, adesso va
    Ottimo! Spero che tu abbia capito il perché...
  • Re: [RISOLTO] Errore compilazione [C]

    minomic ha scritto:


    ofcar ha scritto:


    Ah ok grazie, adesso va
    Ottimo! Spero che tu abbia capito il perché...
    Sì, inizializzazione diverso da dichiarazione
Devi accedere o registrarti per scrivere nel forum
6 risposte