#include <iostream>
using namespace std;
int intFunc(int x, int *p, int **pp) {
return x;
}
int *pointerFunc(int x, int *p, int **pp) {
return p;
}
int **pointerPointerFunc(int x, int *p, int **pp) {
return pp;
}
int main()
{
int x, *p, **pp;
int resultx, *resultp, **resultpp;
x=5;
p = &x;
pp = &p;
cout<<"HEY, you, I'm alive! Oh, and Hello World!\n";
printf( "x = %d\n", x );
printf( "&x = %d\n", &x );
printf( "p = %d\n", p );
printf( "*p = %d\n", *p );
printf( "&p = %d\n", &p );
printf( "pp = %d\n", pp );
printf( "*pp = %d\n", *pp );
printf( "**pp = %d\n", **pp );
printf( "&pp = %d\n", &pp );
resultx = intFunc(x,p,&p);
printf( "resultx (intFunc) = %d\n", resultx );
resultp = pointerFunc(x,p,&p);
printf( "resultp (pointerFunc) = %d\n", resultp );
resultx = *pointerFunc(x,p,&p);
printf( "resultx (*pointerFunc) = %d\n", resultx );
resultpp = pointerPointerFunc(x,p,&p);
printf( "resultr (pointerPointerFunc) = %d\n", resultpp );
resultp = *pointerPointerFunc(x,p,&p);
printf( "resultp (*pointerPointerFunc) = %d\n", resultp );
resultx = **pointerPointerFunc(x,p,&p);
printf( "resultx (**pointerPointerFunc) = %d\n", resultx );
cin.get();
}
Monday, 20 September 2010
C(++) and Pointers
Been playing with C and C++ variable declarations and pointers (using Microsoft Visual Studio 2010) last few mornings. This code should serve as good reference in future:
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment