Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: C++
Expertise: All
Nov 19, 1998

Data Pointers vs. Function Pointers

C and C++ make a clear-cut distinction between two types of pointers: data pointers and function pointers. A function pointer embodies several constituents such as the list of arguments, a return-to address, and the machine instructions. A data pointer, on the other hand, merely holds the address of the first byte of a variable. The substantial difference between the two functions led the C standardization committee to prohibit the use of void* (or data pointers of any kind) to represent function pointers and vice versa. In C++ this restriction was relaxed, yet the results of coercing a function pointer to a void * are implementation-dependent. The opposite (converting of data pointers to function pointers) is a recipe for a core dump. Also, unlike a data pointer, a function pointer cannot be dereferenced.
Danny Kalev
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date