C语言指针

本文详细介绍了计算机内存的基本概念及如何使用指针进行内存管理。包括变量声明、指针定义与赋值、间接引用运算符(*)及地址运算符(&)的使用等。并通过示例代码演示了指针在实际编程中的应用。

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

先介绍内存的定义,内存就是计算机中的储存空间,空间分为若干份每个单位为字节(BYTE),每部分都有一个地址,就像一本书,所有的内容都有页码,而页码就是指地址,

我们声明一个变量时,int x;//就是 定义一个整型的且大小为四BYTE的空间 来储存x 的值,&X就是指x的地址;

而int *n;//就是指 定义一个指向整型的指针;
在定义 n=&x;//表示n指向x的的指针 ,在接下来的代码中所有x都可以使用*n代替
就是*n=x;

*:使间接寻址或间接引用运算符。
当它作用于指针时,将访问指针所指向的对象。
&:地址运算符,使用函数的地址;
(*,&比算术运算符的优先级要高)

由于指针也是变量,所以在程序中可以直接使用而不必通过间接引用的方式使用。
例如:如果ip是指向整型的指针,那么语句

ip=iq;

就是把iq中的值拷贝到ip 中,这样指针ip的值也指向iq的对象。

#include <stdio.h>
int main()
{
    int *x,*a,b=2,*c,d=4;
    a=&b;
    c=&d;
    printf("%d %d\n",*a,*c);
    if(*a<*c)
    {
        x=a;
        a=c;//
        c=x;
    }

    printf("%d %d\n",*a,*c);
    return 0;
 } 

指针是个间接调用值,例如
int x=5,*ptr;ptr=&x;printf("%d,%d",x,*ptr);
//指针指向的是x的地址,就是使用地址运算符,间接调用x 的值。
以及字符串的使用,char ptr【36】; scanf(“%s”,ptr);(字符串的首元素,可以表示该数组的地址)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值