C语言入门之--指针

    xiaoxiao2021-04-18  64

    C语言入门之–指针

    本文简单讲解一下C语言最重要的核心之一——指针:

    存放地址的变量称为指针变量。指针变量是一种特殊的变量,它不同于一般的变量,一般变量存放的是数据本身,而指针变量存放的是数据的地址。 假设在程序中声明了1个int型的变量a,其值为68。系统为变量a分配的首地址为0X65FDF4H,p=a是存放变量a地址的指针变量,即p=a中存放的值为0x065FDF4H。 对变量a的访问有两种方式:一是直接按地址0x065FDF4H找到a的存储单元,从而对变量a进行访问;二是按系统为p=a分配的地址先找到p=a,然后根据pa的值(即变量a地址0x065FDF4H)找到变量a在内存中的存储单元,从而对变量a进行访问。对于前一种访问方式称为直接访问方式,后一种访问方式称为间接访问方式。 如果一个指针变量存放的是某个对象的地址,则称这个指针变量指向该对象。在C++程序设计中,指针变量只有确定了指向才有意义。

    下面简单写一段关于指针的C语言代码,以让大家更好的理解其含义:

    int main() { int a; //给变量a分配一个地址空间 int *b; //定义一个指向int变量的指针,但是现在b不指向任何地址空间 b = &a; //给指针变量b赋值为指向变量a所属的地址空间 //现在 a 与 *b 就同属于同一个地址空间了,操作a就是操作 *b,反过来,操作 *b 就是操作a *b = 10; printf(“%d”,a); //输出结果为10; a = 100; printf(“%d”,*b); //输出结果为100; //可以自行测试一下。

    }

    对于指针,可以用在未知数组长度情况下,这种情况对于C语言处理数组来说十分方便:

    int main() { int *a; //指向数组的指针 int N; //N为数组的长度 int i,j; scanf(“%d”,&N); //输入数组长度 //依次输入数组元素

    a = (int * ) malloc (N * sizeof(int)); foiusheiuhwefw for(i =0;i< n;i++) //scanf(“%d”,&a[i]); scanf(“%d”,a++); //两种方法都可以,推荐使用第二种。 } 这个是指针的简单应用,希望对于入门C语言指针的同学都能理解 指针的简单的应用。

    更多详情请点击: (http://blog.csdn.net/sinat_27706697/article/details/47856491)

    浏览器兼容

    目前,本编辑器对Chrome浏览器支持最为完整。建议大家使用较新版本的Chrome。IE9以下不支持IE9,10,11存在以下问题 不支持离线功能IE9不支持文件导入导出IE10不支持拖拽文件导入
    转载请注明原文地址: https://ju.6miu.com/read-675030.html

    最新回复(0)