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

  • Elefant Traks

    Elefant Trak

    5 HAZİRAN 2007
  • Helen Bradley

    Helen Bradle

    4 Mart 2008
  • THE RED DRAGON

    THE RED DRAG

    6 ŞUBAT 2009