C语言指针(个人的认识)

  有人说指针是C语言的灵魂,可见指针的重要性。

  下面我们就开门见山。

一、指针定义

 指针即地址,指针变量是存储指针的变量。

二、指针的声明

int * p,(表示p变量存储一个int类型变量的地址。)

#include<stdio.h>

void main(){
 int i=10;
 int * p;
 p = &i;
 printf("%d,%d",p,i);

}

 

上图我们可以发现p是存储i变量地址的变量 值为:1638212.  这是内存上的一个地址编码。

三 指针类型

  指针有各种复杂的类型,int * ,double * ,int * a[] 数组类型等等

四 常见的指针错误类型

1:指针数据类型不一致

2:指针访问权限有误

(1)

#include<stdio.h>

void main(){
 int i=10;
 int * p;
 p = i;//数据类型不一致
 printf("%d,%d",p,i);

}

 

 

p变量为指针变量,i为int类型变量,数据类型不一致,不能赋值。

 

(2)

#include<stdio.h>

void main(){
 int i=10;
 int * p;
 *p = i;//指针变量p没有指向,*p不能赋值
 printf("%d,%d",p,i);

}

 

#include<stdio.h>

void main(){
 int i=10;
 int * p;
 printf("%d,%d",*p,i);//p变量没有赋值,为垃圾值,所以p指向了一个未知的地址,因此我们不能访问这个地址变量所存储的值。

}

 指针和指针变量就先讲到这些,接下里一段时间将更新此内容,菜鸟一个,勿喷,请指教

 

转载于:https://www.cnblogs.com/devin818/p/5995427.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值