SORU
17 Kasım 2010, ÇARŞAMBA


Ana uygun Bildirgesi nedir?

C main fonksiyonunun imza nedir ? Doğru dönüş türü nedir, geri vermek ne demek main değeri? Anlamları ne parametre türleri ve izin nelerdir?

Bu sisteme özel mi? Bu kurallar zamanla değişti? Eğer bunları ihlal edersem ne olur?

CEVAP
17 Kasım 2010, ÇARŞAMBA


main işlev genel ad üyesi olmayan bir işlev olarak bildirilmiş olması gerekir. Bu bir sınıf, ne de bir ad konabilir (hatta isimsiz ad) statik veya statik olmayan üye işlev olamaz anlamına gelir.

Adı main genel ad alanında bir işlevi dışında C saklıdır. Diğer varlıklar main, diğer şeyler arasında da dahil olmak üzere, genel ad değil, değişkenler, Listeleme, üye fonksiyonları, ve üye olmayan fonksiyonlar sınıflar adlı bildirmek için ücretsiz.

Bir üye veya bir ad işlevi gibi bir işlev main adlı bildirebilirsiniz, ama böyle bir işlevi programın başladığı atayan main işlevi olmaz.

main işlevini static inline olarak ilan etti. Ayrıca aşırı olamaz; yalnızca bir işlev genel ad main adlandırılabilir.

Kod içinde herhangi bir yerden main işlevini çağırmak için izin verilmez, ne de adresini alabilirler. programın kullanılamaz main işlevi:

main dönüş türü int olmalıdır. Başka bir dönüş türü izin verilir (bu kural kalın çünkü çok sık görmek yanlış programları beyan main ile bir dönüş türü void; Bu muhtemelen en sık ihlal kuralı ile ilgili main fonksiyon).

İzin verilmesi gereken main iki kural vardır:

int main()               // (1)
int main(int, char*[])   // (2)

(1)parametreler vardır.

(2)iki parametre vardır ve geleneksel argc argv sırasıyla isimleri var., argv C dizeleri bir dizi program bağımsız değişkenleri temsil eden bir işaretçi. argc argv dizi bağımsız değişken sayısıdır.

Genellikle, argv[0] programın adını içerir, ama bu her zaman böyle değildir. argv[argc] boş gösterici olması sağlanır.

Dizi türü değişken (char*[] gibi) gerçekten sadece kılık değiştirmiş pointer tipi bir değişken olduğundan, aşağıdaki iki yazmak için her ikisi de geçerli bir yol olduğunu unutmayın(2)ve onlar tam olarak aynı şeyi ifade eder:

int main(int argc, char* argv[])
int main(int argc, char** argv)

Bazı uygulamalar diğer parametre türleri ve sayıları izin verebilir; uygulamanızın belgelerine bakın destekler ne görmelisin.

main() sıfır başarı göstermek için dönüş bekleniyor ve sıfır hata göstermek için. Değil gerekli için açıkça yazmak return deyim main(): izin verirsen main() dönüşü olmayan bir açık return deyimi, aynı gibi yazılı return 0;. main() aşağıdaki iki işlevi aynı davranışı:

int main() { }
int main() { return 0; }

İki makrolar EXIT_SUCCESS ve de main() başarı ve başarısızlık, sırasıyla belirtmek için döndürülen EXIT_FAILURE, <cstdlib> olarak tanımlanır.

Değeri main() tarafından döndürülen programı sonlandırır exit() işlev geçirilir.

Bu ortamı (gayrı, tam standart bir kütüphane ve bir işletim sistemi programı çalıştırmayı olduğu bir ortamda ev sahipliği yaptı derlemek için yalnızca geçerli olduğunu unutmayın. Bu da derleme bir C programı için bir dolaplı ortamı (örneğin, bazı türleri gömülü sistemler), bu durumda başlangıç ve sonlandırma vardır tamamen uygulama tanımlı ve main() çalışmayabilir bile olması gerekli. Eğer modern bir masaüstü işletim sistemi için C yazıyorsanız, ama, bir ortama ev sahipliği derlemek için.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • hytchme

    hytchme

    9 Mart 2014
  • RiverCityGraphix

    RiverCityGra

    6 Ocak 2012
  • UrAvgConsumer

    UrAvgConsume

    1 Ocak 2012