Strano funzionamento delle funzioni in C++

di nonsochefaredellavit il
19 risposte

19 Risposte - Pagina 2

  • 27/01/2023 - euscar ha scritto:


    27/01/2023 - nonsochefaredellavit ha scritto:


    26/01/2023 - migliorabile ha scritto:


    Scommettiamo che il file ha estensione ‘. c’ invece di ‘. cpp’ o ‘. cxx’? 

    No, ha estensione .cpp

    abbiamo provato con diversi programmi (CodeBlocks, DevCpp, Online GDB) e comunque non cambia il risultato

    Hai letto anche gli altri messaggi che seguono?
    Nel frattempo abbiamo verificato che dipende dal compilatore.

    ma in ogni caso non riesco a capire perchè la variabile minore assume effettivamente il valore minore.

  • 27/01/2023 - nonsochefaredellavit ha scritto:


    ma in ogni caso non riesco a capire perchè la variabile minore assume effettivamente il valore minore.

    Probabilmente succede proprio quello che aveva scritto Weierstrass nel suo primo messaggio, che ti riporto:

    E' comportamento indefinito, quindi quello che succede dipende dal compilatore.
    Ad esempio, con questo sei fortunato perché il compilatore usa come return value nascosto proprio il registro che ti serve
  • In realtà prima dovresti spiegare perché passi il terzo argomento alla funzione.

  • Se provo a compilare il file del primo mesaggio ottengo i seguenti messaggi:

    Warn :  NONAME00.CPP(21,6):Function should return a value
    Warn :  NONAME00.CPP(21,6):Parameter 'minore' is never used
    Warn :  NONAME00.CPP(17,6):'minore' is assigned a value that is never used
    Warn :  NONAME00.CPP(11,6):'minore' is assigned a value that is never used
  • Tutti warning corretti

Devi accedere o registrarti per scrivere nel forum
19 risposte