Çanakkale Onsekiz Mart Üniversitesi Bilgisayar Mühendisliği Bölümü yapısal programlama(C) ders notlarım.
---------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int callbyref1(int *);
int callbyref2(int *);
int main()
{
int c=5,sonuc;
sonuc=callbyref1(&c);
printf("callbyref1 sonrasi c=%d , sonuc=%d\n",c,sonuc);
sonuc=callbyref2(&c);
printf("callbyref2 sonrasi c=%d , sonuc=%d",c,sonuc);
return 0;
}
int callbyref1(int *ptr)
{
return *ptr * *ptr;
}
int callbyref2(int *ptr)
{
*ptr=*ptr * *ptr;
return *ptr;
}
------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[5] = {2,4,6,8,10};
int *aptr;
/** üç şekildede adresi verir **/
printf("a dizisinin adresi=%p\n",a);
printf("a dizisinin adresi=%p\n",&a);
printf("a dizisinin adresi=%p\n",&a[0]);
aptr=&a;
printf("a dizisinin adresi=%p\na dizisinin degeri=%d\n",aptr,*aptr);
aptr=aptr+2;
printf("a dizisinin 3. elemani=%d\n",*aptr);
printf("3. elemanin adresi=%p\n",aptr);
aptr=aptr+1;
printf("a dizisinin 4. elemani=%d\n",*aptr);
printf("4. elemanin adresi=%p\n",aptr);
printf("a dizisinin 4. elemani=%d\n",*aptr+1); /** sadece geçici olarak degeri 1 arttırdık 4. eleman 5 oldu **/
printf("5. elemanin adresi=%p\n",aptr);
aptr=aptr+1; /** aptr=aptr++; yapsaydık aynı şey olmazdı **/
printf("a dizisinin 5. elemani=%d\n",*aptr);
printf("5. elemanin adresi=%p\n",aptr);
aptr=aptr-1;
printf("a dizisinin 4. elemani=%d\n",*aptr);
printf("4. elemanin adresi=%p\n",aptr);
return 0;
}
------------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[5] = {2,4,6,8,10};
fonk(&a);
return 0;
}
void fonk(int *arr)
{
int i;
for(i=0;i<5;i++)
{
printf("dizinin %d. elemani=%d\n",(i+1),*arr);
arr=arr+1;
}
}
No comments:
Post a Comment