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

  • Bobbylee Budde

    Bobbylee Bud

    13 ŞUBAT 2011
  • KSI

    KSI

    25 Temmuz 2009
  • MaximumPCMag

    MaximumPCMag

    23 Temmuz 2010