C语言中const与指针使用方法总结

C语言中const与指针使用方法总结

在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正。写出这篇目的,就是希望大家一起成长,我也相信技术之间没有高低,只有互补,只有分享,才能使彼此更加成长。  

总结:

  • * const 值不能改变,指向可改变
  • const * 值能改变,指向不可改变
  • const * const 都不能改变

实例代码:

#include <stdio.h>

int main(int argc, const char * argv[])
{

  // 1 可改变指针
  const int a = 10;
  int *p = &a;
  *p = 1000;
  printf("*p = %d\n", *p);

  // 2 可改变指针
  const b = 10;
  int *pb = &b;
  pb = p;
  printf("*pb = %d\n", *pb);

  // 3
  const c = 10;
  int * const pc = &c;
  *pc = 1000;
  //pc = pb;不能改变

  //4
  const d = 10;
  const * int const pd = &d;
  //*pd = 1000; 不能改变


  printf("\n");
  return 0;
}

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。