Switch to full style
C++ code examples
Post a reply

Basic Pointers

Thu Nov 13, 2008 2:49 pm

Usage of Pointer in C++
cpp code
/* Some pointer games. */
#include <stdio.h>

int fred(int *z)
{
int q = *z;
*z = 15;
return 2*q;
}

int main()
{
int m = 5, n = 10;
int *ip, *ip2;

ip = &m;
ip2 = &n;
*ip = 77;
*ip2 = -485;
printf("A: %d %d\n", m, n);

*ip2 = *ip;
printf("B: %d %d\n", m, n);

ip2 = ip;
*ip = 100;
*ip2 = 200;
printf("C: %d %d\n", m, n);

m = fred(&n);
printf("D: %d %d\n", m, n);
}


Pointers in C are analogous to references in Java, but much more powerful (and hence more confusing an error-prone). The * is the dereference operator, which goes from a pointer to the thing it points to. The & is the address-of operator which creates a pointer to other data.

The * is used in declarations to declare pointers. It is the dereference operator only in expression. This can be rather confusing. The & is not used in declarations in C (though C++ uses it to make things more confusing).

If you are in lecture, make sure your lazy instructor gets off his duff and makes a picture of this. It's the only way to make sense out of it. If you're not in lecture, you might want to consider drawing your own picture toward the same purpose.



Post a reply
  Related Posts  to : Basic Pointers
 Some basic tips for SEO     -  
 Transforming XML into Basic HTML     -  
 Java basic tutorials.doc     -  
 Swap Using Pointers     -  
 Arrays using Pointers     -  
 Types of Pointers in C++     -  
 How to use pointers and what it means     -  
 Learn ASP.NET,Visual basic 2005,08     -  
 The using of pointers between two variables (Swaping)     -  
 pointers to derived types     -  

Topic Tags

C++ Variables