İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. Programlama Dilleri
Programlama Dilleri

C++ Programın dönüş kodu nasıl alınır?

Deleted-Name30.10.201315 cevap2.308 görüntüleme
Deleted-Name
#1
Bir fonksiyon yazacağım dönüş koduna göre hata verecek yada vermeyecek ama programın dönüş kodunu nasıl alabilirim?
Cevaplar
#2
Shit Happens dedi: ↑
Bir fonksiyon yazacağım dönüş koduna göre hata verecek yada vermeyecek ama programın dönüş kodunu nasıl alabilirim?
Yapmak istediğini biraz daha açabilir misin? Dönüş kodundan kastın, fonksiyonun içinde çalıştığı program sonlandığında üretilen ve ilgili işletim sisteminin ele aldığı dönüş kodu mu? Yoksa başka birşey mi?

C'de stderr ile sonlandırmayı bir dosyaya yazdırabilirsin, ya da hata yakalama mekanizmasını kendin yazabilirsin. Hata işletim sistemi kısıtlamalarından kaynaklanıyorsa bunların da %90 ını yakalarsın, geri kalanını yakalayamaya bilirsin.

O yüzden tam olarak düşündüğün şeyi, fonksiyonel olarak, adım adım yazarsan daha çok yardımcı olabiliriz gibi.
Deleted-Name Konuyu açan
#3
Kendi yazdığım programın dönüş kodunu almak istiyorum programın sonlandığı kod yani
#4

/* strerror example : error list */
#include <stdio.h>
#include <string.h>
#include <errno.h>

int main ()
{
  FILE * pFile;
  pFile = fopen ("unexist.ent","r");
  if (pFile == NULL)
    printf ("Error opening file unexist.ent: %s\n",strerror(errno));
  return 0;
}


Kaynak: http://www.cplusplus.com/reference/cstring/strerror/

Return kodunu illa ki istersen, ilgili fonksiyonun kodunu mesaja string olarak geçebilirsin.
Deleted-Name Konuyu açan
#5
sağol
#6
Rica ederim, inşAllah işine yarar.
#7
Fonksiyon true(yani 1) dönerse hata vermicek, False(0) dönerse hata vericek şekilde if else yazabilirsin. Yanlış mı anladım acaba soruyu?
Deleted-Name Konuyu açan
#8
cosmosfb dedi: ↑
Fonksiyon true(yani 1) dönerse hata vermicek, False(0) dönerse hata vericek şekilde if else yazabilirsin. Yanlış mı anladım acaba soruyu?
Evet öyle if else ile yaptım

- - - Mesaj Güncellendi - - -
kosasker peki çıktı olmadan cmd komutunu nasıl çalıştırabilirim?
#9
Shit Happens dedi: ↑
Evet öyle if else ile yaptım

- - - Mesaj Güncellendi - - -
kosasker peki çıktı olmadan cmd komutunu nasıl çalıştırabilirim?
system() komutu var. Her çıktıyı engelleyemezsin amma, > işaretini kullanarak yönlendirme yapabilirsin. Çalışan komutu arka plana göndermek için & kullanıyorduk sanırım.

system("cmd &") işe yarar mı bilmiyorum. Biraz araştırman gerekecek. Google ellerinden öper diyelim. En azından ne istediğini bilmen güzel, geri kalanı azıcık ingilizce ve sabır :)
Deleted-Name Konuyu açan
#10
kosasker dedi: ↑
system() komutu var. Her çıktıyı engelleyemezsin amma, > işaretini kullanarak yönlendirme yapabilirsin. Çalışan komutu arka plana göndermek için & kullanıyorduk sanırım. system("cmd &") işe yarar mı bilmiyorum. Biraz araştırman gerekecek. Google ellerinden öper diyelim. En azından ne istediğini bilmen güzel, geri kalanı azıcık ingilizce ve sabır :)
bende > kullanarak txt dosyasına attım sonra sildim dosyayı google'dan baktım ama bir şey çıkmadı bir de &'ı deneyeyim

- - - Mesaj Güncellendi - - -

& işe yaramadı
#11
Sanırım & sadece posix türevi sistemlerde işe yarıyor, windows' da işe yaramıyor.
Deleted-Name Konuyu açan
#12
kosasker dedi: ↑
Sanırım & sadece posix türevi sistemlerde işe yarıyor, windows' da işe yaramıyor.
@ echo off gibi bir şey yokmu

- - - Mesaj Güncellendi - - -
kosasker Tamam buldum system("echo off"); oluyor
#13
Hehehe :)
Deleted-Name Konuyu açan
#14
sonunda buldum ya

- - - Mesaj Güncellendi - - -

pardon ya olmuyormuş çıktıyı hala dosyaya atıp siliyormuşum dosyayı koddan silince geri geldi çıktı
#15
Bulursun kardeşim. Biraz daha uğraşman lazım sadece. Yaptığın hatalar ne kadar olursa olsun sorun yok. Her hata, hata yapma ihtimalini azaltarak seni doğruya ulaştırır. Birşeyler bulacağına eminim.
Deleted-Name Konuyu açan
#16
kosasker buldum bu sefer gerçekten buldum komutun sonuna >nul eklenecekmiş system("komut>nul"); gibi yani

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.