#include <iostream.h>
#include <conio.h>
main()
{
int arr[5] = {2, 4, 6, 8, 10} ,arr2[5] ,*p1 ,*p2 ,i;
p1 = arr;
p2 = arr2;
for(i=0;i<5 ;i++, p1++, p2++)
*p2 = *p1;
for(i=0;i<5;i++)
cout<<"arr2["<<i<<']'<<'='<<arr2[i]<<' ';
getch();
return 0;
}
|
הסבר התוכנית: הגדרנו תחילה שני מערכים, שני מצביעים p1 ו
p2 ואינדקס i. לאחר מכן ביצענו השמה של שמות המערכים למצביעים.
מערכים של מצביעים:
כד עה התייחסנו למצביעים בתור משתנים בודדים, המצביעים
לכתובת מסויימת בזיכרון המחשב. אך קיימת אפשרות להגדיר מערך של מצביעים,
בדיוק כפי שיש מערך של משתנים מהטיפוסים שהכרנו עד כה. בשביל מה זה טוב?
ובכן בהגדרת מערך של מצביעים אנו יכולים להתייחס לכמות גדולה של נתונים במרוכז
ובגמישות. דוגמה להגדרת מערך של מצביעים:
|
#include <iostream.h>
#include <conio.h>
main()
{
int i;
int x=2, y=4, t=6, z=8;
int *ptr[4];
ptr[0]=&x; ptr[1]=&y; ptr[2]=&t; ptr[3]=&z;
for(i=0;i<4;i++)
cout<<"ptr["<<i<<"]="<<*ptr[i]<<' ';
getch();
return 0;
}
|