Skip to Content
C Pocket Reference
book

C Pocket Reference

by Peter Prinz, Ulla Kirch-Prinz
November 2002
Beginner to intermediate
142 pages
4h 19m
English
O'Reilly Media, Inc.
Content preview from C Pocket Reference

Pointers

A pointer represents the address and type of a variable or a function. In other words, for a variable x, &x is a pointer to x.

A pointer refers to a location in memory, and its type indicates how the data at this location is to be interpreted. Thus the pointer types are called pointer to char, pointer to int, and so on, or for short, char pointer, int pointer, etc.

Array names and expressions such as &x are address constants or constant pointers, and cannot be changed. Pointer variables, on the other hand, store the address of the object to which they refer, which address you may change. A pointer variable is declared by an asterisk (*) prefixed to the identifier. For example:

float  x, y, *pFloat;
pFloat = &x;     // Let pFloat point to x.

After this declaration, x and y are variables of type float, and pFloat is a variable of type float * (pronounced “pointer to float“). After the assignment operation, the value of pFloat is the address of x.

The indirection operator * is used to access data by means of pointers. If ptr is a pointer, for example, then *ptr is the object to which ptr points. For example:

y = *pFloat;   //  equivalent to  y = x;

As long as pFloat points to x, the expression *pFloat can be used in place of the variable x. Of course, the indirection operator * must only be used with a pointer which contains a valid address.

A pointer with the value 0 is called a null pointer . Null pointers have a special significance in C. Because all objects and functions have ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Embedded-Software entwickeln

Embedded-Software entwickeln

Thomas Eißenlöffel
Eingebettete Systeme, 2nd Edition

Eingebettete Systeme, 2nd Edition

Walter Lange, Martin Bogdan, Thomas Schweizer

Publisher Resources

ISBN: 0596004362Errata Page