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

  • Megan Parken

    Megan Parken

    19 Temmuz 2009
  • stewmurray47

    stewmurray47

    1 Kasım 2006
  • The White House

    The White Ho

    21 Ocak 2006