【时时三省】(C语言基础)指针变量例子

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省

存放地址的变量是指针变量,它用来指向另一个对象(如变量、数组、函数等)。

那么,怎样定义和使用指针变量呢?

先分析一个例子。

例题

通过指针变量访问整型变量。

解题思路:

先定义2个整型变量,再定义2个指针变量,分别指向这两个整型变量,通过访问指针变量,可以找到它们所指向的变量,从而得到这些变量的值。

编写程序:

运行结果:

程序分析:

( 1 )在开头处定义了两个指针变量pointer _ 1和pointer _ 2。但此时它们并未指向任何一个变量,只是提供两个指针变量,规定它们可以指向整型变量,至于指向哪一个整型变量要在程序语句中指定。程序第6,7两行的作用就是使pointer _ 1指向a,pointer _ 2指向b,此时pointer _ 1的值为& a(即a的地址),pointer _ 2的值为&b。

( 2 )第8行输出变量a和b的值100和10。第9行输出*pointer_1和*pointer_2的值。其中的"*"表示"指向"。* pointer _1表示"指针变量pointer _1所指向的变量",也就是变量a。* pointer _ 2表示"指针变量pointer 2所指向的变量",也就是变量b。从运行结果看到,它们的值也是100和10。

( 3 )程序中有两处出现* pointer _ 1和* pointer _ 2,二者的含义不同。程序第5行的* pointer _ 1和*pointer_2表示定义两个指针变量pointer 1和pointer 2。它们前面的"*"只是表示该变量是指针变量。程序最后一行printf函数中的* pointer l和* pointer _2则代表指针变量pointer _ 1和pointer _2所指向的变量。

注意:定义指针变量时,左侧应有类型名,否则就不是定义指针变量。例如:

int * pointer _ 1 ;

相关推荐
busideyang4 小时前
为什么推挽输出不能接收串口数据,而准双向口可以?
c语言·stm32·单片机·嵌入式硬件·嵌入式
炸膛坦客4 小时前
单片机/C/C++八股:(二十)指针常量和常量指针
c语言·开发语言·c++
爱编码的小八嘎4 小时前
C语言完美演绎4-8
c语言
炸膛坦客5 小时前
单片机/C/C++八股:(十九)栈和堆的区别?
c语言·开发语言·c++
weixin_426689206 小时前
vscode C语言编译环境搭建(单个文件)
c语言·ide·vscode
幽灵诶9 小时前
指针与其运用
c语言
望酹江月11 小时前
HNU-RFID与传感器原理实验
c语言·单片机
计算机安禾12 小时前
【C语言程序设计】第39篇:预处理器与宏定义
c语言·开发语言·c++·vscode·算法·visual studio code·visual studio
本喵是FW13 小时前
C语言手记3
c语言·开发语言
HABuo13 小时前
【linux线程(一)】线程概念、线程控制详细剖析
linux·运维·服务器·c语言·c++·ubuntu·centos