DonanımHaber Mini sürüm 2 Ocak 2026 tarihi itibariyle kullanımdan kalkacaktır. Bunun yerine daha hızlı bir deneyim için DH Android veya DH iOS uygulamalarını kullanabilirsiniz.
Arama butonu
Bu konudaki kullanıcılar: 1 misafir
3
Cevap
312
Tıklama
0
Öne Çıkarma
C++ Kod Hatası
A
7 ay (4 mesaj)
Er
Konu Sahibi

Selamlar. Visual Studio 2022 Ide Üzerinde C++ dili ile alıştırma yaparken böyle bir sorun ile karşılaştım. Amacım en alttaki iki kod satırı ile ve srand(time(0)) ve rand() komutlarını kullanarak 1-10 arasında rastgele bir sayı üretmekti. Fakat izlediğim bir videoda birisi aynısını yapıyor ve hiç hata almıyor. Bana ise ikinci resimdeki gibi uyarı veriyor. Kontrol ettim fakat hata bulamadım. Neden kaynaklı olduğunu bulabilen arkadaşlar varsa yardımcı olurlarsa sevinirim. İyi forumlar.

< Resime gitmek için tıklayın >


< Resime gitmek için tıklayın >

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil




A
7 ay (4 mesaj)
Er
Konu Sahibi

Bir not daha ekleyeyim (int) türüne cast etmeden öncede hata alıyordum. Eminim ki sorunun int türüne cast etmem ile bir alakası yok.



H
7 ay (9023 mesaj)
Binbaşı

num % 0

niye 0 hocam?



H
3 hafta (9704 mesaj)
Yarbay

Iste temellere hakim olmazsan böyle patlarsın.

Kodu senin icin degistirip calısan sürümü vermek yerine mevzuyu izah edeyim

time(0) fonksiyonu, time_t tipinde değer döndürür, kulalndığın VS sürümü mutlaka videodakinden daha yenidir, yani senin sürümde, time_t 64 bit integer olabilir. fakat srand() unsigned int 32 bit bekler. 

bu derleme hatasına yol açmaz, yani kod calısır fakat derleyici uyarı verebilir, üst sürümde uyarı cıkıyordur ve derlemeyi kabul etmiyordur ama videodaki sürümde sorunsuz derlenebiliyordur. cünkü yani bu mevzu böyle olsa bile cagrı sırasında truncation olur ve sorun cıkmaz ancak MS bunu üst sürümlerde yasaklamıs olabilir

Videodaki eleman hata almıyorsa VS sürümü 32 bit veya eskidir. ya kodu değiştireceksin, ya hatayı engelleyen bir sey kullanacaksın mesela calısırsa #pragma warning(disable:xxxx xxxx) gibi ya da eski bir VS sürümü yükleyeceksin.





< Bu mesaj bu kişi tarafından değiştirildi Headlong Into Carnage -- 4 Aralık 2025; 10:12:32 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.