C语言-指针定义及用法

 今天把学到的指针的知识整理了一下,希望对你们有所帮助。

 1、指针的定义:指针也是变量,但独特于一般的变量,其他的变量都是存放的是实实在在的数据,而这个指针存放的是内容所在的地址,指向的是一个地址,不是实实在在的数。

2、语法:int  *point;

3、指针的使用:

(1)在此举出一个简单的Demo:

注释为红色字体 


#include<stdio.h>

int main()

{

// 初始化,声明变量的同时,给变量赋值

int myInt=200;

// 声明一个指针,初始化的值是myInt的地址

int *myPointer = &myInt;

// 打印myInt 的地址

printf("The myInt's address is %p\n",&myInt);

// myPointer存放的数据是地址,在这里是myInt的地址

printf("The myPointer point address is %p\n",myPointer);

*myPointer=200;

printf("The myInt'x value is %d\n",myInt);

return 0;

}

输出结果如下:

The myInt's address is 000000000061FE44
The myPointer point address is 000000000061FE44
The myInt'x value is 200

(2)这个Demo是比前面的那一个更深入一点

int main(void)

{

int value=1000;

changVarValue(&value);

//value是个具体的值,要输出他的所在的地址的话,要加&符号

printf("the value'adress is %p\n",&value);

printf("In main the value is %d\n",value);

return 0;

}

void changVarValue(int *pValue)

{

*pValue=100;

//pValue表示一个指针,指定的地址存放的内容,取他的地址的话不用加*符号

printf("the pValue'address is %p\n",pValue);*

printf("In changVarValue the oldValue is %d\n",*pValue);

}

他的输出结果是:

the pValue'address is 000000000061FE4C

In changVarValue the oldValue is 100

the value'adress is 000000000061FE4C

In main the value is 100

 

在此讲一下: *的符号代表的是取内容,&符号是取地址;

*pValue 表示的是指定地址所存放的内容,所以当我们想要输出他的地址是多少时,*号就不需要了;

如果变量是具体值的话,想要得到他的地址时,需要加上&符号。

指针存放数据的地址也需要内存空间进行存放。

以上总结的知识希望对你你有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值