C'de yayın yapmak diğer dillerden farklı olarak benzersizdir. Asla akıllı değildir.
C harfiyle döküm, değerleri dikkatlice tanımlanmış kuralları kullanarak bir türden diğerine dönüştürür. Gerçekten bilmeniz gerekiyorsa, standardı okuyun. Aksi takdirde ana noktalar:
- Tamsayı türleri arasındaki dönüşüm mümkünse değeri korur. Hedefin daha fazla biti varsa, bu genişler ve genellikle güvenlidir, ancak işaret uzatması içerebilir. Daha dar olursa, bitler kaybolacaktır.
- İşaretçi türleri arasındaki dönüştürme işaretçi değerini korur, ancak sonuçlar genellikle tanımsızdır, genellikle taşınabilir değildir ve genellikle gelişmiş senaryolar için kullanışlıdır.
- Tamsayı türleri ve işaretçiler arasındaki dönüşüm, tamsayı yeterince büyükse ve bit desenini (ne anlama geliyorsa) koruyorsa, sorun olmaz. Tam sayı çok küçükse, sonuç tanımsızdır, ancak yararlı değildir. Kural olarak 'uzun', 'boşluk *' için yeterince geniştir ancak garanti yoktur! Bu şekilde oluşturulan işaretçiler her türlü ilginç şekilde geçersiz olabilir.
- Kayan nokta ve tamsayı türleri arasındaki dönüşüm, uygun bir kütüphane rutini tarafından tanımlandığı gibi aritmetik dönüşümlerdir (yuvarlama ile değil, kesilerek).
- Bir işlevin dönüş değerini geçersiz kılabilirsiniz. Asla sahip değilim. Hiçbir şey yapmaz.
Bazı yayınlar dolaylı olarak uygulanır ve bazılarında derleyici bir uyarı verir. En iyi uyarıları dikkate almak!
Cast için sözlük tanımı, yararsız olduğu için en iyi şekilde göz ardı edilir. Birçok yayın, dönüşüm veya baskı terimleriyle daha iyi tanımlanır, bu yüzden bunları da bilmeye değer.
C ++ ÇOK daha karmaşık, ama bunu sormadınız, değil mi?