hour09_3.cpp

来自「《24学时精通c++》的随书源码的下半部分。欢迎下载学习。」· C++ 代码 · 共 50 行

CPP
50
字号
  // Listing 9.3 What is stored in a pointer.

 #include <iostream>

 

 int main()

 {

     unsigned short int myAge = 5, yourAge = 10;

     unsigned short int * pAge = &myAge;  // a pointer
     unsigned int result=0;

 

     std::cout << "myAge:\t" << myAge;

     std::cout << "\t\tyourAge:\t" << yourAge << "\n";

     std::cout << "&myAge:\t" << &myAge;

     std::cout << "\t&yourAge:\t" << &yourAge <<"\n";

 

     std::cout << "pAge:\t" << pAge << "\n";

     std::cout << "*pAge:\t" << *pAge << "\n\n";

 

     pAge = &yourAge;       // reassign the pointer

 

     std::cout << "myAge:\t" << myAge;

     std::cout << "\t\tyourAge:\t" << yourAge << "\n";

     std::cout << "&myAge:\t" << &myAge;

     std::cout << "\t&yourAge:\t" << &yourAge <<"\n";

 

     std::cout << "pAge:\t" << pAge << "\n";

     std::cout << "*pAge:\t" << *pAge << "\n\n";

 

     std::cout << "&pAge:\t" << &pAge << "\n";

     result = myAge * *pAge;   // The space helps the compiler determine multiplication and dereference
     std::cout << "result is " << result << "\n";

   // use pAge to change the contents of yourAge
   // You will see that the address contained in pAge doesn't change, but yourAge does!

     *pAge = 22;

     std::cout << "myAge:\t" << myAge;

     std::cout << "\t\tyourAge:\t" << yourAge << "\n";

     std::cout << "&myAge:\t" << &myAge;

     std::cout << "\t&yourAge:\t" << &yourAge <<"\n";

 

     std::cout << "pAge:\t" << pAge << "\n";

     std::cout << "*pAge:\t" << *pAge << "\n\n";

 

     std::cout << "&pAge:\t" << &pAge << "\n";

     return 0;

 }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?