Üye Girişi Yapınız     


    E-Posta
    

    Şifreniz
    



Şifremi Unuttum


Ana Sayfa Site Hakkında İletişim Ziyaretçi Defteri Döküman İndir Makale Ekle Haber Ekle

     Karakter Dizileri
     admin     15.03.2012     16:31:51

C dilinde, karakter dizileri oldukça sık kullanılır. Sadece karakter dizilerine özel olarak, karakter dizilerinin sonuna sonlandırcı karakter olarak adlandırılan bir simge eklenir. Sonlandırcı karakter, işlemlerin hızlı ve etkin bir biçimde yapılabilmesine olanak sağlar. Sonlandırıcı karakter: dizinin bittiği yeri gösterir, ASCII tablosunun sıfır numaralı (’\0’) karakteridir.

C dilinde, karakter dizileri oldukça sık kullanılır. Sadece karakter dizilerine özel olarak, karakter dizilerinin sonuna sonlandırcı karakter olarak adlandırılan bir simge eklenir. Sonlandırcı karakter, işlemlerin hızlı ve etkin bir biçimde yapılabilmesine olanak sağlar. Sonlandırıcı karakter: 

  • dizinin bittiği yeri gösterir,
  • ASCII tablosunun sıfır numaralı (’\0’) karakteridir.

Karakter dizilerine iki şekilde başlangıç değeri verilebilir.

      char s[7] = {’d’,’e’,’n’,’e’,’m’,’e’,’\0’}; ya da

      char s[7] = "deneme";

Birinci tanımlamada sonlandırıcı karakter programcı tarafından konmalıdır. Ikinci tanımlamada ise buna gerek yoktur. Çünkü, sonlandırıcı karakter bu atamayla, derleyici tarafından eklenir.

 NOT

char s[7] = "deneme"; 

 ataması geçeli olmasına rağmen, aşağıdaki atama geçersizdir:

char s[7];
char s = "deneme";

Karakter dizileri gets() fonksiyonu ile klavyeden okunabilir.

     char ad[20];

     ...

     gets(ad);

1.programda bir karakter dizisinin uzunluğunun nasıl bulunduğu, diğer programda ise bir karakter dizisinin tersyüz edilişi gösterilmiştir. İnceleyiniz.

#include <stdio.h>

int main(void)
{ char s[40]; int  k = 0;
   /* diziyi oku */
   printf("Bir seyler yazin : ");
   gets(s);
   /* sonlandırıcı karaktere kadar karakterleri say */
   while( s[k]!=’\0’ )
      k++;
   printf("Dizinin uzunlugu : %d\n",k);
return 0;
} 
Birseyler yazin  : Gazintep Universitesi
Dizinin uzunlugu : 21 -----------------------------------------------------------
#include <stdio.h>
int main(void)
{  char s[40], gecici; int  i, n;
   /* diziyi oku */
   printf("Bir seyler yazin : ");
   gets(s);
   /* sonlandırıcı karaktere kadar */
   for(n=0; s[n] != ’\0’; n++)
      ;
   for(i=0; i<n/2; i++){
      gecici   = s[n-i-1];
      s[n-i-1] = s[i];
      s[i]     = gecici;
   }
 printf("Tersi            : %s\n",s);
return 0; } Bir seyler yazin : Deneme
Tersi            : emeneD

Facebook'ta Paylaş    
Diğer C / C İçerikleri       Tüm Yazılar        Ana Sayfa


  =>Soru Sorun veya Yorum Yazın...

İsim Giriniz :
  

  =>Yapılan Yorumlar...