SORU
9 Kasım 2009, PAZARTESİ


Char In arasındaki fark nedir[] ve char *s C?

C, bu gibi yapabilirim:

char s[]="hello";

ya

char *s ="hello";

Acaba bu kadar fark nedir? Aslında derleme zamanı ve çalışma zamanı sırasında bellek ayırma ne olduğunu öğrenmek istiyorum.

CEVAP
9 Kasım 2009, PAZARTESİ


Fark burada

char* s = "Hello world";

koyar dize "Hello world" salt okunur bellek oluşturur ve bir işaretçi s bunu yaparken herhangi bir yazma işlemi s geçersiz (örneğin, s[0] = 'A'), süre

char s[] = "Hello world";

bu dize salt okunur bellek bölgelerinde "Hello world" dizi 13 ** stack . bellek ayırarak oluşturur koyar ^em>kopyalardize yeni ayrılan bellek, s hukuk üzerinde herhangi bir yazma işlemi yapmadan değişmez.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • efaustus9

    efaustus9

    16 HAZİRAN 2006
  • kalabrandmusic

    kalabrandmus

    25 Kasım 2009
  • TheXiaxue

    TheXiaxue

    3 AĞUSTOS 2009