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

  • GoldgenieOfficial

    GoldgenieOff

    23 Temmuz 2009
  • hoorahjencar

    hoorahjencar

    6 HAZİRAN 2007
  • Rachel Raum

    Rachel Raum

    10 EYLÜL 2007