1.

``````int *f()
{
int *m=(int *)malloc(2);
return m;
}
``````

WHY THIS POINTER TO INT TREATED AS A GLOBAL VARIABLE.
2.can a pointer points to another pointer like that

``````int *p,i=2;
int *q;
p=&i;
q=p;
``````

IS IT RIGHT.

Edited by Nick Evan: Fixed formatting

3
Contributors
4
Replies
5
Views
13 Years
Discussion Span
Last Post by let us c

about the second question yes you can use pointer to refrence to another pointer and this is the method used in dynamic allocation of multi dimintion aray you can write :

``````void a2d(int i,int j)
{
int **t =new int*  ;//rows
for(int k=0;k<i;k++)
t[k]=new int[j] ; //col
}
``````

but i do not understand the first question but notice that the pointer is a refrense mean that if u pass a pointer of int to an function it does not take a copy from the int it takes a copy of the refrence to the int so if u change the int value it will be changed and u can not retain the previous value for example :

``````main()
{
int *i=new int ;
*i=2;
fun (i) ;
cout<<*i;
getch();
}
void fun (int *m)
{
*m=3;
}
``````

the result of the cout will be 3 is that what u mean ?

Edited by Nick Evan: Fixed formatting

there can be pointer to pointer.
int a=25;
int*b=&a;
int**c=&b;

there can be pointer to pointer.
.............
int a=25;
int*b=&a;
int**c=&b;
............
here c is pointer to b.

there can be pointer to pointer.
.............
int a=25;
int*b=&a;
int**c=&b;
............
here c is pointer to b and b is pointer to a.
value of acan be accesed in two ways.ie by both the pointers.

if i am wrong anywhere please tell me.thank you :p

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.