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

  • DavidParody

    DavidParody

    17 EKİM 2009
  • nemoking of kinges

    nemoking of

    4 EYLÜL 2009
  • Samantha Crain

    Samantha Cra

    30 EKİM 2008