//#############################################################
// const
//   - 编译时的限制:一个对象不能被修改 
//

int i = 1;

const int *p1 = &i;  // 数据不能被修改,指针可以被修改

int* const p2 = &i;  // 指针不能被修改, 数据可以

const int* const p3;  // 指针和数据都不能被修改


// 容易搞错的一种情况
int const *p4 = &i;   // 数据不能被修改,指针可以被修改

// 总结
// 如果const在*的【左边】, 那么【数据】为const
// 如果const在*的【右边】, 那么【指针】为const


/*
  为什么要使用const
		a.) 防止对数据的意外修改
		b.) 使程序具有更好的可读性,知道这些数据是常量
		c.) 使编译器能够做更多的优化,使代码更紧凑
		d.) const往往意味着变量放在ROM上,在嵌入式编程中很有用
*/

相关文章:

  • 2021-11-25
  • 2021-05-20
  • 2022-12-23
  • 2021-10-14
  • 2022-02-19
  • 2022-12-23
  • 2022-12-23
  • 2021-11-05
猜你喜欢
  • 2021-08-14
  • 2021-11-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-02
相关资源
相似解决方案