31 Ocak 2016 Pazar

Göstericiler(Pointers)-18

C Göstericiler(Pointers)-18

Yerel değişkenlerin adresleriyle geri dönme işleminin
sebep olduğu hata nedir? 

/*Yerel değişkenlerin adresleriyle geri dönme
 * işleminin sebep olduğu hata nedir?
 */

#include <stdio.h>
#include <stdlib.h>


//Yerel Nesnelerin Adresleriyle Geri Dönmek
char *getName()
{
            // name char * tipinden adres belirtiyor.
            char name[50];

            printf("isim giriniz:");
            gets(name);

            return name;
}

int main(void) {

            /* Yerel nesnelerin adresleri ile geri dönmek
             * hatalı bir işlemdir. Yerl değişkenler otomatik
             * ömürlü olduğundan dolayı fonksiyon bittiğinde
             * bellekten silinirler.
             */
            char *name = getName();
            printf("İsim : %s\n", name);
            return EXIT_SUCCESS;
}



Hiç yorum yok:

Yorum Gönder