Ben kullanmanızı öneririz internette eski yazılıma ve kötü öğreticiler bir sürü görmek exit(-1), return -1"anormal fesih" temsil etmek veya benzer. Sorun en azından POSIX’de -1hiç olmamıştı ve geçerli bir durum kodu değil. man 3 exitgöstermektedir exit()döndürür değerini status & 0377, yani ebeveyn -1olur 255. POSIX dışı sistemlerde, EXIT_FAILUREtaşınabilirlik için önerilir. Ancak "EXIT_FAILURE ile birlikte" -1, anormal sonlandırma "anlamına gelmez," -1 "nin POSIX dışı sistemlerde bile geleneksel olduğuna inandıklarını gösterir.
İşte bunu devam ettiren bir StackOverflow sorusu örneği . "Unrealircd" yazılımı da programı exit(-1)sonlandırmak için kullanılan bir program örneğidir . Uygulamada, bu arayüzü zorlaştırıyor systemd.
Bu anti-patern nereden geldi? Bazı bağlamlarda geçerli mi?
unsigned char.
char, değer aralığı -128 ile 127 arasında olduğundan daha fazla eşdeğerdir. Dahası, zaten "-1" in soru gövdesinde "255" e dönüştüğünü belirtmiştim .