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

  • Autodesk 3ds Max Learning Channel

    Autodesk 3ds

    23 HAZİRAN 2010
  • jesiel santos

    jesiel santo

    15 Ocak 2009
  • NextGenWindows

    NextGenWindo

    8 Kasım 2011