Performans Konusunda C Ve C++ Farkı?
-
Örneğin
cout << "abc";
Yerine
printf("abc");
Şeklinde kullansak hangisi daha performanslı olur?
Ve ikisinin asm opcode ları aynı mıdır?---
-
low level dillerden anlamıyan bir adamın yorumu;
bence ikisi arasındaki performans farkı, tercih sebebi olmamalı.
-
Şöyle birşey söyleyebilirim,
genel olarak birçok teknolojik alanda performans açısından OOP yani object oriented programming dilleri kullanılır ve bunların içerisinde c++ vardır
C ise yordamsal(procedural) programlama dillerindendir,
arasındaki fark ise kodların uzunluğu ve programın ne derece büyük olursa olsun c++ 'da birimsel olarak çalışabiliyorsun,classlar, inheritler,methods lar ile çalışabildiğin için, o büyüklükteki kodları parçalara ayırabilir birbiriyle ilişkilendirebilir ve ayrı ayrı çalıştırabilirsin.Bu da sana performans artışı sağlar.
C de ise bunları kullanamadığın için geniş çaplı çalışmalarda performans düşüklüğüne yol açar
Elektroniktede OOP dilleri kullanımda öncelikledir.
OOP ile procedural programming dilerini karşılaştırırsan daha fazla bilgi edinebilirsin.
-
Geniş çaplı değil örneğin basit bir konsol uygulaması yazıyoruz burada cout mu kullanalım printf mi yani C++ mi C mi kullanalım?
-
Fatih54 bunu yazdı
Geniş çaplı değil örneğin basit bir konsol uygulaması yazıyoruz burada cout mu kullanalım printf mi yani C++ mi C mi kullanalım?
Sana kalmış.Olaya bu kadar dar bakabildiğin için açıklamaya gere.k olmadığını farkettim
Yani c ile c++ arasındaki tek fark printf ve cout
Tamam sana hadi hayırlı işler.
-
Fatih54 bunu yazdı
Geniş çaplı değil örneğin basit bir konsol uygulaması yazıyoruz burada cout mu kullanalım printf mi yani C++ mi C mi kullanalım?
hocam uygulaman küçük ise hiç fark etmez aslında. Fakat şöyle bir olay var printf sadece konsola cıktı vermek için kullanılmaz printf ile yazıcıya ve ağa çıktı gönderebilirsin. Uygulamanda bu işlemlerin bir kaçını beraber kullanacaksan tabi ki konsol çıktısı için cout kullanman daha kolay olur senin için.
-
esconda haklı, adam sana açıklamar yapmış oop a değinmiş ama sen printf ile cout farkını sormuşsun, bunlar ne hocam? ne kadar fark olabilir ki, milyonlarca data ile mi uğraşan fonksiyonlar sanki? birim bazında bakarsan arada milisaniyelerce fark olur daha ötesi yoktur. hadi entity framework ya da ado.net i karşılaştırsan anlarız ama printf ile cout un performansının bir değeri yok çok da önemli değil..
eleman güzel yazmış
Do you really need to care which has a faster execution speed? They are both used simply for printing text to the console/stdout, which typically isn't a task that demands ultra-high effiency. For that matter, I wouldn't imagine there to be a large difference in speed anyway (though one might expect
printf
to be marginally quicker because it lacks the minor complications of object-orientedness). Yet given that we're dealing with I/O operations here, even a minor difference would probably be swamped by the I/O overhead. Certainly, if you compared the equivalent methods for writing to files, that would be the case. -
Fatih54 bunu yazdı
Geniş çaplı değil örneğin basit bir konsol uygulaması yazıyoruz burada cout mu kullanalım printf mi yani C++ mi C mi kullanalım?
esconda güzel acıklamıs.
senin sordugun soru suna benziyor, bilgisayarını günlük kullanırken, 2 GB ramli haliyle 3 GB ramli hali arasındaki hız farkını hissedebilir misin ?
cogu zaman hayır.
hele ki basit bir konsol uygulamasında cout & printf karsılastırması yapmak bence sacma olur.
yine de sadece ekrana yazdırma islemi yapacaksan, cout kullan derim.
-
Esconda bunu yazdıFatih54 bunu yazdı
Geniş çaplı değil örneğin basit bir konsol uygulaması yazıyoruz burada cout mu kullanalım printf mi yani C++ mi C mi kullanalım?
Sana kalmış.Olaya bu kadar dar bakabildiğin için açıklamaya gere.k olmadığını farkettim
Yani c ile c++ arasındaki tek fark printf ve cout
Tamam sana hadi hayırlı işler.
Hayır öyle demek istemedim. (Printf() ve cout benzer türde olduğu için örnek verdim.)
Örnek vermiştim orada ama öyle anlaşılmış demek ki.
Anlatmaya çalıştığım basit konsol uygulamalarında C++ mi C mi kullanalım hangisi daha performanslı. Burada sadece öğrenmek amaçlı soruyorum yoksa zaten aradaki fark ölçülemez.Geniş çaplı projelerde zaten genellikle OOP gerektiği için C++ kullanılmalı (veya ben öyle biliyorum)
Fatih54 tarafından 28/Mar/13 18:06 tarihinde düzenlenmiştir -
geniş çaplı projeler nelerdir hocam mesela? dünyada çok spesifik olmadıkça c/c++ çok kullanılmıyor projelerde. .net ve java şuan lider konumda.
zaten dil seviyesi yükseldikçe yazılımcıya düşen yük azalıyor (gc işleri gibi) o halde bu özel bir iş yapılmıyorsa bu tarz dillerin kullanılması
hamallıktan başka bir şey değildir, maliyette paralel olarak artar.
-
unbalanced bunu yazdı
geniş çaplı projeler nelerdir hocam mesela? dünyada çok spesifik olmadıkça c/c++ çok kullanılmıyor projelerde. .net ve java şuan lider konumda.
zaten dil seviyesi yükseldikçe yazılımcıya düşen yük azalıyor (gc işleri gibi) o halde bu özel bir iş yapılmıyorsa bu tarz dillerin kullanılması
hamallıktan başka bir şey değildir, maliyette paralel olarak artar.
Kendisi c ve c++ arasındaki farkı sorduğu için o bazda cevap vermiş oldum
Java da bir OOP dillerinden biridir ve c++ de kullansan java da kullansan farketmez çünkü aynı olanakları sağlar
Yordamsal programlama ile OOP dillerini karşılaştırabilirsin fakat iki tane OOP dilini karşılaştırırsan absürt kaçar çünkü kişinin isteğine bağlıdır.