[TCPL]第五章 指针与数组 学习笔记

本文详细介绍了C语言中指针的基本概念,包括指针的定义、如何使用指针以及指针与数组之间的关系。此外还讲解了如何通过指针来传递参数给函数,从而实现对原始数据的修改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

5.1 指针与地址

指针是一种保存地址的变量.是能够存放一个地址的存储单元(32位机器占4个字节,64位机器占8个字节).

p=&c;   将c的地址赋给变量p  成p是指向c的指针.  地址运算符&只能应用于内存中的对象,即变量和数组,不能用于表达式,常量,或register变量.

声明 int *p; 表明表达式*p的结果是一个int类型.

指针只能指向某种特定类型的对象,每个指针必须指向某种特定的数据类型(void类型的指针除外,可以存放指向任何类型的指针,但它不能间接引用其自身 即void *vp;   *vp是不允许的)

5.2 指针与函数参数

C函数参数是值传递,即主调函数传给被调用的函数一个副本.  因此被调用函数不能直接修改主调函数中变量的值.  要修改的话,可以用指针作参数.

5.3 指针与数组

 数组名和指针的不同.指针是一个变量,可以进行赋值 自增(p++;p=a)等操作,而数组名不是变量,类似a=p;a++;等形式的语句是非法的.   但是当把数组名传递给一个函数时,该参数是一个局部变量,因此,数组名参数必须是一个指针,也就是一个存储地址值的变量

转载于:https://www.cnblogs.com/zacky/p/9076135.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值