SORU
30 EYLÜL 2013, PAZARTESİ


İki işaretçiler adresleri aynı

#include<stdio.h>
#include<string.h>

int main()
{
  char * p = "abc";
  char * p1 = "abc";
  printf("%d %d", p, p1);
}

İki işaretçiler değerleri yazdırırken, aynı adrese baskı. Neden?

CEVAP
30 EYLÜL 2013, PAZARTESİ


İster aynı içeriğe sahip iki farklı dize hazır aynı bellekte yer alır ya da farklı bellek konumlarını uygulaması bağımlıdır.

Hep onlar gibi iki farklı işaretçiler aynı içeriğe sahip olmalarına rağmen () p p1 tedavi gerekir veya aynı adresi işaret edebilir. Derleyici en iyi duruma getirmeleri güvenmemelisiniz.

, 6.4.5, C11 Standart Dize hazır bilgi, sematics

Bu dizi onların farklı olduğunu temin edip belirtilmemiş elemanları uygun değerleri var. Eğer program çalışırsa böyle bir dizi değişiklik, davranış tanımsızdır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bmarian22

    bmarian22

    22 Aralık 2007
  • modica89

    modica89

    24 HAZİRAN 2007
  • SelmerSaxMan

    SelmerSaxMan

    24 HAZİRAN 2006