码迷,mamicode.com
首页 > 其他好文 > 详细

const修饰的指针类型

时间:2020-08-27 17:13:47      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:image   efi   类型   secure   code   loading   结果   alt   str   

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

 

int main01()

{

//常量

  const int a=10;

  //a=100;//err不能修改

//通过指针间接修改常量的值

  int*p=&a;

  *p=100;

  printf("%d\n",a);

  printf("%d\n",*p);

  return 0;

//结果

技术图片

}

 

int main02()

{

//const修饰指针类型,可以修改指针变量的值,不可以修改指向内存空间的值(const紧挨谁则不能修改谁)

  int a=10;

  int b=20;

  const int*p=&a;

  //*p=100;//err

  p=&b;

  printf("%d\n",*p);

  return 0;

//结果

技术图片

}

 

int main03()

{

//const修饰指针变量:可以修改指针指向内存空间的值,不可以修改指针变量的值(const紧挨谁则不能修改谁)

  int a=10;

  int b=20;

  int*const p=&a;

  //p=&b;//err

  *p=20;

  printf("%d\n",*a);

  return 0;

//结果

技术图片

}

 

int main04()

{

//const修饰指针类型,修饰指针变量

  int a=10;

  int b=20;

//只读指针;一级指针存储普通变量a的值

  const int* const p=&a;

  //*p = 100;//err

  //p = &b;//err

//通过二级指针指向一级指针对应的空间,存储一级指针p的值;再通过二级指针可以间接修改一级指针的值,也可以修改一级指针指向内存空间的值

  int**pp=&p;

//通过二级指针里的一级指针,修改对应内存空间的值

  * pp=&b;

  printf("%d\n",*p);

 

//修改一级指针对应的内存空间的值

  **pp=100;

  printf("%d\n",*p);

  

  return 0;

//结果   

技术图片

 

 

 

技术图片

 

 

 

}

const修饰的指针类型

标签:image   efi   类型   secure   code   loading   结果   alt   str   

原文地址:https://www.cnblogs.com/wanghong19991213/p/13546340.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!