

0 / 2 embers
0 / 3000 xp
click for more info
Complete a lesson to start your streak
click for more info
Difficulty: 2
click for more info
Not enough gems
Cost: 6 gems
1: Memory
incomplete
2: What Is an Address?
incomplete
3: Virtual Memory
incomplete
4: Pointers
incomplete
5: Why Pointers?
incomplete
6: Pointer Basics
incomplete
7: Pointers to Structs
incomplete
8: C Arrays
incomplete
9: Arrays As Pointers in C
incomplete
10: Multibyte Arrays
incomplete
11: Array Casting
incomplete
12: Pointer Size
incomplete
13: Arrays Decay to Pointers
incomplete
14: C Strings
incomplete
15: C String Library
incomplete
16: Forward Declaration
incomplete
17: Mutual Structs
incomplete
Back
ctrl+,
Next
ctrl+.
This lesson's interactive features are locked, please to keep using them
So I mentioned in the last lesson that memory can be thought of as a big array of bytes, and each byte has an address.
That's true, and the beauty is that each address is literally just a number. It's not some mortal address like "1234 Elm St." or "1600 Pennsylvania Ave." It's just a number.
You might be thinking, "Hey, if it's just a number, why does it look all disgusting like 0xfff8?"
That's because 0xfff8 is just a number. But:
hexadecimal (base 16) instead of decimal (base 10).0xfff8 is the same as 65,528 in decimal.