Subscribe For Free Updates!

We'll not spam mate! We promise.

pointer etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
pointer etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

4 Mart 2015 Çarşamba

C Dili - Ders 23 - Değişkenlerin Adresleri




Değişkenler herbirinin hafızda saklandıkları yerlerin adresleri vardır. Bu adresleri & (adresse of) operatörüyle görebiliriz. Örneğin;
int a=10;
printf("a degiskeninin adresi:%d",&a);

float b=56;
printf("b degiskenin adresi:%d",&b);

char harf='d';
printf("harf degiskenin adresi:%d",&harf);
Bu bilgi ileride pointerlar konusunda yardımcı olacak

C Dili - Ders 24 - Pointer



C programlama denilince akla ilk gelenler arasında pointer meselesi vardır. Aslında en zorlanılan konudur. Ama aslında süper bişeydir
Kısaca Pointerlar oluşturduğumuz değişkenlerin adreslerini gösterirler. Peki bu nasıl olur.
int a=5; //temel değişken tanımı.
şimdi bu değişkenin adresini ekrana yazdıralım.
printf("\na degiskenin adresi : %d",&a);
şimdi bir pointer tanımlayalım ve bu pointer a değişkenini göstersin.
int* pointer=&a;
Yukarıda görüldüğü gibi pointer tanımlarken *(yıldız) karakterini kullanıyoruz.
printf("\npointerin gostedigi adres : %d",pointer);
printf("\npointerin gosterdigi adresteki deger : %d",*pointer);
Yukarıdaki konuyu anlamışsınızdır umarım.Bu ilk bölümdü. Pointerlar daha bitmedi.

C Dili - Dinamik Dizi Oluşturmak



Yazacağımız program önce kullanıcıdan dizinin kaç elemanlı olacağını sorsun. Daha sonra dizinin elemanlarını kendi atayarak ekrana yazdırsın.
#include "stdio.h"
#include "stdlib.h"

int main()
{
int boyut=0;
printf("Dizi boyutunu girin:");
scanf("%d",&boyut);
int* dizi;
dizi=(int *)malloc((boyut*sizeof(int)));

int i=0;
for(i=0;i<boyut;i++)
{
*dizi=i;
printf("%d",*dizi);
dizi++;
}

return 0;
}

C Dili - Ders 28 - Hafıza ile Çalışma II



Bu dersimizde hafızdan ayırdığımız bölümü işimiz bittiğinde serbest hale getirmeyi göreceğiz.
Bu işlemi free fonksiyonu ile yapıyoruz. Aşağıda görüldüğü gibi.
#include "stdio.h"
#include "stdlib.h"

int main()
{
int* pointer=(int *)malloc(sizeof(int));
*pointer=6;
printf("Deger: %d - Adres: %d\n",(*pointer),pointer);
free(pointer);
return 0;
}

Ads Inside Post

Sitemize Hoşgeldiniz :)

Haberci

Destek3

Related Posts Plugin for WordPress, Blogger...