SORU
9 ŞUBAT 2011, ÇARŞAMBA


char * karşı sabit karakter *sabit sabit?

Bazı örnek programlar ile C ile refamiliarize kendim için yapıyorum ve şu soruyu rastladığıma. İlk olarak, burada örnek kod

void print_string(const char * the_string)
{
    cout << the_string << endl;
}

int main () {
    print_string("What's up?");
}

Yukarıdaki kodu, print_string parametre yerine const char * const the_string olabilirdi. Bu daha doğru olurdu?

Bir sabit bir karakter için sabit bir işaretçi ise farkı bir sabit bir karakter için bir işaretçi olduğunu anlıyorum. Ama neden bu iş? Ne zaman anlamlı olabilir mi?

CEVAP
9 ŞUBAT 2011, ÇARŞAMBA


İkincisi print_string içinde the_string değiştirmenizi önler. Aslında burada çok uygun olurdu, ama belki de ayrıntı geliştirici ertelendi.

char* the_string: the_string puan char değiştirebilirim ve hangi işaret eden char getirebilirim.

const char* the_string: the_string puan char değiştirebilirim, fakat puan char değiştir edemem.

char* const the_stringKalamam hangi the_string puan char değişim, fakat puan char getirebilirim.

const char* const the_stringKalamam hangi the_string puan char değişiklik, ne de hangi işaret eden char değiştirebiliyorum.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AmazonWireless

    AmazonWirele

    8 EYLÜL 2010
  • EminemMusic

    EminemMusic

    9 ŞUBAT 2007
  • LiteralMSPaint

    LiteralMSPai

    27 EKİM 2010