Arama butonu
Bu konudaki kullanıcılar: 1 misafir
4
Cevap
266
Tıklama
0
Öne Çıkarma
C dlinde bir kac soru \n ve return 0 hk
S
10 yıl
Yarbay
Konu Sahibi

arkadaşlar bazı programların sonunda return 0 ;

ifadesi yer alıyor bu ne yaptırtıyor programa?

ayrıca mesela ("Hello World \n");

buradaki \n yanlıs hatırlamıyorsam satır mı atlatıyordu? denedim ama satır vs atlattıgını yada atlatmadıgını goremedım code lite uzerındeki outputta bir fark olmadı.



H
10 yıl
Çavuş

Return 0; demesinin sebebi main metodunun int main tanimlanmasindan dolayı main int yani tamsayi dondurmek zorunda. Bu nedenle main metodunun sonunda return 0; satırına yer verilmiştir. Ayrıca main metodundan 0 döndürulmesi çalıştırılan programın hata olmadan normal yollardan sona erdiğini gösterir. 0 dan farklı bir deger döndürulmesi örneğin return 5; satırı mainde varsa program bir hatadan dolayı sonlandiriliyor demektir.

("Hello world \n " );
( "Sonraki satir");

şeklinde yazın bakalım sonraki satir yazısı bir altta yazılıyor mu?
Bu işe yaramaz sa \n yerine \n\r yazarak deneyin.





< Bu mesaj bu kişi tarafından değiştirildi hobbit1421 -- 10 Kasım 2013; 17:32:33 >
Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @el_nino_09
S
10 yıl
Yarbay
Konu Sahibi

quote:

Orijinalden alıntı: hobbit1421

Return 0; demesinin sebebi main metodunun int main tanimlanmasindan dolayı main int yani tamsayi dondurmek zorunda. Bu nedenle main metodunun sonunda return 0; satırına yer verilmiştir. Ayrıca main metodundan 0 döndürulmesi çalıştırılan programın hata olmadan normal yollardan sona erdiğini gösterir. 0 dan farklı bir deger döndürulmesi örneğin return 5; satırı mainde varsa program bir hatadan dolayı sonlandiriliyor demektir.

("Hello world \n " );
( "Sonraki satir");

şeklinde yazın bakalım sonraki satir yazısı bir altta yazılıyor mu?
Bu işe yaramaz sa \n yerine \n\r yazarak deneyin.

bilgiler için tesekkurler hocam yalnız return de biraz takıldım.Mesela asagıdaki ornekte return 0 ı kaldırırsam ne olur yada ne olmaz?

#include <stdio.h>

int main(int argc, char **argv)
{
printf("hello world\n");
return 0;
}

int main tanımlamaları yerine onları silip sadece

main()

yazsaydım bu sefer return ıfadesını kaldırabilir miydim?


Bu mesaja 1 cevap geldi.
H
10 yıl
Çavuş

Maini int main yerine void main olarak tanimlarsaniz return ifadeli satırı kaldirmalisiniz çünkü void demek main metodu hiç bir şey dondurmuyor demektir. Isterseniz void main tanimlamasi varken return 0 satırını silmeyin hata verecektir çünkü main void olarak tanımlanmıştır. Basa donersek eger maini int main olarak tanimlarsaniz return 5 gibi bir satir olmali. Yine return 5 gibi bir satir yoksa hata mesaji alacaksınız.


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @el_nino_09
4
10 yıl
Teğmen

Bu arada C de non-zero bir değer başarı bilgisidir ama main in döndürdüğü değer işletim sistemine gittiği için(main keyword değildir ve işletim sistemi tarafından çağırılır) bu da genelde tam tersi yani "zero" başarı bilgisidir. Ondan main 0 döndürür, yukarıdaki arkadaşın açıklamalarına ek olarak.





< Bu mesaj bu kişi tarafından değiştirildi 4kalan -- 10 Kasım 2013; 19:11:58 >

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.