L'uso dello stack o di registri diversi è un dettaglio tutt'altro che accademico... eax (o rax su AMD64) viene usato giusto se restituisci un intero o un puntatore, nel caso di valori floating point o di struct si usano altri registri, lo stack o il chiamante passa un puntatore ad un buffer (allocato come meglio crede) in cui mettere il valore restituito.


Rispondi quotando