/*Array of pointers to integers i.e. Array of integer pointers. Since integer pointer store one address.So,array of integer pointers is used to store many addresses .*/
#include<stdio.h>
int main()
{
printf("\nBefore starting array of pointers Understand pointer \n");
printf("\nint *p; tells to compiler that p will be used to store single address of integer\n");
int *p;//p will be used to store address of a pointer
int i=10;
p=&i;//pointer is used to store address of int i
printf("address of i=%u or p=%u\n",&i,p);
printf("value of i=%d or *p=%u\n",i,*p);
printf("\nNow understanding array of pointer to integers.\n");
printf("\narray of pointers to integers is used to store many addresses of integers\n");
int a=10,b=20,c=30;
int* arr[]={&a,&b,&c};/*arr is array of integer pointers so contains addresses*/
printf("\nAddresses of integers:\n");
printf("address of a=%u\n",&a);
printf("address of b=%u\n",&b);
printf("address of c=%u\n",&c);
printf("\nAddrs of integers are stored in arr so each arr[i] is an address:\n");
printf("arr[0]=%u\n",arr[0]);
printf("arr[1]=%u\n",arr[1]);
printf("arr[2]=%u\n",arr[2]);
printf("\nsince arr[i] are address so *arr[i] gives values stored at address stored in them\n");
printf("\narr[0]=%u\n",*arr[0]);
printf("arr[1]=%u\n",*arr[1]);
printf("arr[2]=%u\n",*arr[2]);
return 0;
}
/*OUTPUT:
Before starting array of pointers Understand pointer.
int *p; tells to compiler that p will be used to store single address of integer
address of i=3220971004 or p=3220971004
value of i=10 or *p=10
Now understanding array of pointer to inegers.
array of pointers to integers is used to store many addreses of integers
Addresses of integers:
address of a=3220971008
address of b=3220971012
address of c=3220971016
Addrs of integers are stored in arr so each arr[i] is an address:
arr[0]=3220971008
arr[1]=3220971012
arr[2]=3220971016
since arr[i] are address so *arr[i] gives values stored at address stored in them
arr[0]=10
arr[1]=20
arr[2]=30
*/
#include<stdio.h>
int main()
{
printf("\nBefore starting array of pointers Understand pointer \n");
printf("\nint *p; tells to compiler that p will be used to store single address of integer\n");
int *p;//p will be used to store address of a pointer
int i=10;
p=&i;//pointer is used to store address of int i
printf("address of i=%u or p=%u\n",&i,p);
printf("value of i=%d or *p=%u\n",i,*p);
printf("\nNow understanding array of pointer to integers.\n");
printf("\narray of pointers to integers is used to store many addresses of integers\n");
int a=10,b=20,c=30;
int* arr[]={&a,&b,&c};/*arr is array of integer pointers so contains addresses*/
printf("\nAddresses of integers:\n");
printf("address of a=%u\n",&a);
printf("address of b=%u\n",&b);
printf("address of c=%u\n",&c);
printf("\nAddrs of integers are stored in arr so each arr[i] is an address:\n");
printf("arr[0]=%u\n",arr[0]);
printf("arr[1]=%u\n",arr[1]);
printf("arr[2]=%u\n",arr[2]);
printf("\nsince arr[i] are address so *arr[i] gives values stored at address stored in them\n");
printf("\narr[0]=%u\n",*arr[0]);
printf("arr[1]=%u\n",*arr[1]);
printf("arr[2]=%u\n",*arr[2]);
return 0;
}
/*OUTPUT:
Before starting array of pointers Understand pointer.
int *p; tells to compiler that p will be used to store single address of integer
address of i=3220971004 or p=3220971004
value of i=10 or *p=10
Now understanding array of pointer to inegers.
array of pointers to integers is used to store many addreses of integers
Addresses of integers:
address of a=3220971008
address of b=3220971012
address of c=3220971016
Addrs of integers are stored in arr so each arr[i] is an address:
arr[0]=3220971008
arr[1]=3220971012
arr[2]=3220971016
since arr[i] are address so *arr[i] gives values stored at address stored in them
arr[0]=10
arr[1]=20
arr[2]=30
*/
Array of Character Pointers ie
ReplyDeleteArray of Strings ie
Array of Pointers to chararcter
#include
const int MAX = 4;
int main ()
{
char *names[] = {
"clinuxcode",
"C Linux Code",
"For Array of pointer",
"pointer to array",
};
int i = 0;
for ( i = 0; i < MAX; i++)
{
printf("Value of names[%d] = %s\n", i, names[i] );
}
return 0;
}