Charles Tritt
/
PointerPlay
Demonstrate basic pointer use.
main.cpp@0:f4431aea05f2, 2017-11-03 (annotated)
- Committer:
- CSTritt
- Date:
- Fri Nov 03 02:19:44 2017 +0000
- Revision:
- 0:f4431aea05f2
- Child:
- 1:66b36106613a
Initial version.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
CSTritt | 0:f4431aea05f2 | 1 | /* |
CSTritt | 0:f4431aea05f2 | 2 | Project: PointerPlay |
CSTritt | 0:f4431aea05f2 | 3 | File: main.cpp |
CSTritt | 0:f4431aea05f2 | 4 | |
CSTritt | 0:f4431aea05f2 | 5 | Demonstrates some uses of pointers. |
CSTritt | 0:f4431aea05f2 | 6 | |
CSTritt | 0:f4431aea05f2 | 7 | Written by: Dr. C. S. Tritt |
CSTritt | 0:f4431aea05f2 | 8 | Created: 9/24/17 (v. 1.0) |
CSTritt | 0:f4431aea05f2 | 9 | |
CSTritt | 0:f4431aea05f2 | 10 | */ |
CSTritt | 0:f4431aea05f2 | 11 | #include "mbed.h" |
CSTritt | 0:f4431aea05f2 | 12 | |
CSTritt | 0:f4431aea05f2 | 13 | int main() { |
CSTritt | 0:f4431aea05f2 | 14 | printf("\nPointer Play -- \"a is a.\"\n"); |
CSTritt | 0:f4431aea05f2 | 15 | // Each set of lines below create a variable and a pointter to it. |
CSTritt | 0:f4431aea05f2 | 16 | float myNum1 = 1.23f; // Initialize the variable. |
CSTritt | 0:f4431aea05f2 | 17 | float* pNum1 = &myNum1; // Initialize the pointer to point to it. |
CSTritt | 0:f4431aea05f2 | 18 | printf("myNum1 is %f and *pNum1 is %f.\n", myNum1, *pNum1); |
CSTritt | 0:f4431aea05f2 | 19 | int myNum2; // Create a variable. |
CSTritt | 0:f4431aea05f2 | 20 | int* pNum2 = NULL; // Create a NULL (unassigned) pointer. |
CSTritt | 0:f4431aea05f2 | 21 | pNum2 = &myNum2; // Put the address in the pointer. |
CSTritt | 0:f4431aea05f2 | 22 | *pNum2 = 15; // Dereference the pointer to store a value. |
CSTritt | 0:f4431aea05f2 | 23 | printf("myNum2 is %d and *pNum2 is %d.\n", myNum2, *pNum2); |
CSTritt | 0:f4431aea05f2 | 24 | // Examine the addresses (pointer values). |
CSTritt | 0:f4431aea05f2 | 25 | printf("pNum1 is %p and pNum2 is %p.\n", pNum1, pNum2); |
CSTritt | 0:f4431aea05f2 | 26 | while(true); // Wait here forever. |
CSTritt | 0:f4431aea05f2 | 27 | } |