 <p>In addition to what others have said, pointers are <em>necessary</em> for dynamic memory allocation (this also applys to higher level languages, but is (usually) abstracted away). This means that without pointers, you're limited to the (generally rather small) stack memory, which is more in need of conservation.</p>