SORU
24 AĞUSTOS 2008, Pazar


Ben ve C arasında performans farkı var mı?

Eğer elde edilen değer kullanılır. i i arasında performans farkı var mı?

CEVAP
24 AĞUSTOS 2008, Pazar


Özet: Hayır.

ben daha yavaş, eski değer beri olabilirim potansiyel uygulama tüm modern içinde daha sonra kullanmak için, ama kaydedilmesi gerekebilir Derleyiciler bu uzak optimize eder.

Bu işlev için kod bakarak,bu canlandırabiliriz ben ve ben ile de .

$ cat i  .c
extern void g(int i);
void f()
{
    int i;

    for (i = 0; i < 100; i  )
        g(i);

}

Dosyalar aynı, ben ve ben hariç

$ diff i  .c   i.c
6c6
<     for (i = 0; i < 100; i  )
---
>     for (i = 0; i < 100;   i)

Onları derlemek, ve ayrıca oluşturulan çevirici alırız:

$ gcc -c i  .c   i.c
$ gcc -S i  .c   i.c

Ve oluşturulan nesne ve çevirici dosyaları her ikisi de aynı olduğunu görebiliriz.

$ md5 i  .s   i.s
MD5 (i  .s) = 90f620dda862cd0205cd5db1f2c8c06e
MD5 (  i.s) = 90f620dda862cd0205cd5db1f2c8c06e

$ md5 *.o
MD5 (  i.o) = dd3ef1408d3a9e4287facccec53f7d22
MD5 (i  .o) = dd3ef1408d3a9e4287facccec53f7d22

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jana Williams

    Jana William

    17 AĞUSTOS 2011
  • ShoSho

    ShoSho

    20 Ocak 2010
  • xSammyJoe1

    xSammyJoe1

    19 Temmuz 2011