20150416指针
Posted wzg31796
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20150416指针相关的知识,希望对你有一定的参考价值。
一.指针概要与要素
1.取地址&在寄存器产生,不占内存,int *p=&a;p是一个变量,要占用内存,间接赋值,存储不同的地址
2.地址计算机总线,地址作为常量不消耗内存
3.任何类型的指针地址都一样,都是四个字节
double *p;
printf("%d",sizeof(p)); 占用四个字节
printf("%d",sizeof(*p));占用八个字节
4.指针的类型决定了指针的长度和解析方式,不明确的类型(void)定义的指针不能间接取值,也不能间接赋值
四.指针声明
1.define 定义的指针,如下面代码,define修饰的指针只修饰了p1
#define 指针 double*
typedef double* INTP;
//int *p
//typedef int *p;
//typedef int * INTP;//别名
void main()
指针 p1, p2;//double * p1,p2; //4,8
INTP p3, p4;//double*类型
printf("%d,%d", sizeof(p1), sizeof(p2));
printf("\\n%d,%d", sizeof(p3), sizeof(p4));
getchar();
1.可以用scanf接收地址,然后根据地质更改值
void main()
int num = 10;
int data = 20;
printf("%p,%p", &num, &data);
int *p;
scanf("%p", &p);//不需要带0x,必须
*p = 20 + 3;
printf("num=%d,data=%d", num, data);
system("pause");
以上是关于20150416指针的主要内容,如果未能解决你的问题,请参考以下文章