- Katılım
- 27 Mayıs 2019
- Mesajlar
- 5.685
- Çözümler
- 21
Daha fazla
- Cinsiyet
- Erkek
C:
#include <stdio.h>
#include <stdlib.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
#define prnt(var) printf("The Value=%d\n",var)
int main(int argc, char *argv[]) {
int num[] = {1,3,2,4,3,5,4,2};
int *a = num;
++*a;
a=num;
prnt(*a);
prnt(&num[0]);
prnt(a);
return 0;
}
Arkadaşlar bu kodla ilgili bir sorum olacaktı size. Şimdi "a" bizim pointerımız. İlk önce A'ya num[0]'ın adresini verdik. Daha sonra bu adresteki sayının değerini 1 arttırdık yani sayı 1'di 2 oldu ama sonra tekrar a = num; yaptığımız için a[0] sayısının adresini saklaması gerekmez mi? Neden prnt(*a) yapınca 2 sayısını gösteriyor?
@Vavien.