C++ 高级程序设计-03-指针和引用 发表于 2022-06-21 更新于 2024-12-22 分类于 南京大学软件学院本科课程 , 2022Spring-C++ 高级程序设计 阅读次数: 本文字数: 598 阅读时长 ≈ 1 分钟 空指针 12#define NULL ((void *)0) // ANSI C#define NULL 0 // C++ 常量指针与指针常量 声明 性质 const int x; x 不可修改 int *p; 不能指向 const int 常量指针:const int *cp; *cp 不可修改,cp 可修改 指针常量:int * const p; p 的指向不可修改,*p 可修改 1234567891011const int c = 128;int* q = const_cast<int*>(&c);//强制类型转换*q = 111;//企图通过变量指针修改常量cout << " c " << &c << c << endl; // 这里的 c 是符号常量,所以在编译的时候,符号常量已经变为 128 了,相当于 definecout << " q " << &q << q << endl;cout << "*q " << q << *q << endl;//Name Addr Value// c 0012FF74 128// q 0012FF70 0012FF74//*q 0012FF74 111//对于同一个地址 0x0012FF74,输出了不同的值 引用 函数返回值为引用时,不能返回局部变量的引用(但此操作能够通过编译)。 打赏 微信支付 支付宝