SORU
17 NİSAN 2012, Salı


C Char İşaretçi Char dizi vs

C işaretçileri anlamaya çalışıyorum ama şu anda aşağıdaki ile karıştırılır:

char *p = "hello"

- bu char işaretçi karakter dizi işaret, h de başlıyor

char p[] = "hello"

- Merhaba saklayan bir dizidir.

Bu işlev hem bu değişkenler geçtiğimde fark nedir?

void printSomething(char *p)
{
    printf("p: %s",p);
}

Farklı nasıl anlamıyorum.

CEVAP
17 NİSAN 2012, Salı


char* char[] farklı türleri vardır, ama hemen her durumda belli değil. Bu diziler çünküişaretçiler içine çürümeeğer yazın bir ifadesi char[] char* beklenen sağlanırsa , derleyici otomatik olarak, ilk öğe için bir işaretçi dizisine dönüştürür anlamına gelir.

Örnek: eğer bu gibi bir dizi iletin çalışırsanız o kadar printSomething bir işaretçi bekliyor fonksiyon:

char s[10] = "hello";
printSomething(s);

Derleyici bu yazdığın gibi davranıyor:

char s[10] = "hello";
printSomething(&s[0]);

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dhcrr's channel

    dhcrr's chan

    2 Ocak 2007
  • SaMmM123

    SaMmM123

    3 Mayıs 2006
  • Video-Tutorials.Net

    Video-Tutori

    15 Mart 2011