首页 > 其他分享 >指针的定义

指针的定义

时间:2023-02-28 10:24:54浏览次数:21  
标签:定义 指向 int 内存空间 运算符 地址 指针

写在前边:

1.*:解引用运算符

2.&:取地址运算符

3.指针也是一种数据类型,是由其他数据类型派生出来的。指针的最大作用是构造数据结构:将不连续的内存空间连接在一起。通过解引用运算符(*)获取p在内存地址上保存的值,*p就代表指针p所指向的内存单元中的值

 

正文:

1.当定义一个变量(int a=100)后,计算机会将变量a的值100转变为二进制储存进一段连续的内存空间,第一个内存空间的编号就是变量a的地址,使用&a可以获取该地址值。

2.当定义一个指针(int *p)后,c程序会在内存中划分一段内存空间,用来存储*p的值。指针类型为int,指针类型的变量为p。

3.当定义一个指针指向变量a的地址(int *p =&a)时,称:p是指向int类型变量a的指针,简称p指向a。此时指针变量p的值,是变量a在内存中存储的第一个地址单元的编号即&a。通过指针类型(int),c程序可以知道这个指针指向的数据占用了4个内存单元,从而正确读出a存储在4个内存空间上的数据。


指针的加减运算:当p = p+1时,p所保存的地址会加上指针类型(int)所占用的存储单元的个数(int是4个字节,即4byte=4*8bit),从而使指针跨越当前数据,指向下一个完整的数据。

 

例:

int main() {

	int a = 100;
	int *p = &a;
	printf("%s %d\n","定义指针后,将a的地址赋给p,p的值:",p);
	printf("%s %d\n","a的地址:",&a);
	printf("%s %d","使用解引用运算符获取指针p所指向元素的值,即为a的值:",*p);
}

依次输出:

>>>定义指针后,将a的地址赋给p,p的值: 6422036
>>>a的地址: 6422036
>>>使用解引用运算符获取指针p所指向元素的值,即为a的值: 100

 

标签:定义,指向,int,内存空间,运算符,地址,指针
From: https://www.cnblogs.com/jinziguang/p/17163000.html

相关文章