C语言入门之--指针

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)

浏览器兼容

  1. 目前,本编辑器对Chrome浏览器支持最为完整。建议大家使用较新版本的Chrome。
  2. IE9以下不支持
  3. IE9,10,11存在以下问题
    1. 不支持离线功能
    2. IE9不支持文件导入导出
    3. IE10不支持拖拽文件导入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值