Ho provato ad eseguire un numero grande di cicli for in cui si esegue una moltiplicazione e una divisione:
1) in c++
2) in c#
3) da una dll scritta in c++, ma passando a c# i risultati a attraverso "PInvoke"

I risultati sono stati che il ciclo viene completato su di un vecchio pc in:
1) circa 38 secondi
2) circa 33 secondi
3) circa 50 secondi

Qualcuno mi sa spiegare i motivi per cui ottengo questi risultati?
Premetto che il c++ non lo conosco bene ed ho scritto poche linee di codice solo per fare questo esperimento.

codice:
            float Ti= clock(); //  Tempo iniziale
            double x = 1.05;
            for (int var_contatore=1; var_contatore < 1400000000; var_contatore++)
          {
                    x = x * 1.000011564;
                    x = x / 1.000011562;
          }
           float Tf= clock(); //  Tempo finale
           float TempoAccumulato = Tf -Ti; // tempo conteggiato dal reset 
           cout << "x=" << x;
           cout << "t=" << TempoAccumulato;