#8:C语言复习:指针基础;

本文详细介绍了C语言中的指针基础,包括指针变量的定义、赋值,以及如何通过指针引用变量。同时,文章讨论了指针与数组的关系,特别是对于一维和二维数组,阐述了各种地址表达式和元素访问方式,并提供了相关示例来说明指针算术和关系运算的使用。
摘要由CSDN通过智能技术生成

指针变量

                    指针变量的定义形式:

                            基类型    *指针变量名1,*指针变量名2,…;

                            指针变量只能指向由定义时基类型规定的类型变量,不能指向其他的变量

                    指针变量的赋值

                            在定义的同时进行初始化
                            int i;
                            int *p=&i;            &取地址计算符,&i表示i的地址。

指针变量的引用

void main()
{
	int a,b,c;
	int *p;
	a=5;
	b=a+3;
	p=&a;			//	通过&把a的地址赋给了p;

	c=*p+3;			//	通过指针运算符*把p指向的变量a的值输出,在进行运算;间接访问。
	printf("%d,%d\n",a,b);
	printf("%d,%d\n",*p,c);
}

例:

输入a,b两个整数,用指针实现先大后小的顺序输出:

void main()
{
	int *p1,*p2,*p,a,b;
	scanf("%d%d",&a,&b);					
        p1=&a;			//	给指针赋值地址的时候,不加*;* 表示取地址中的内容; 
	p2=&b;

	if(a<b)			//	通过交换指针来改变输出的最大最小值,而原数值没变;
	{
		p=p1;
		p1=p2;
		p2=p;
	}

	printf("a=%d,b=%d\n",a,b);	//	输出的a,b并没有变化;

	printf("max=%d,min=%d\n",*p1,*p2);		//	但是指针变化,所以输出变化;
}

以上仅仅改变指针所指的地址,而原地址中的内容并未发生变化!


指针与数组:

一维数组:


                                数组名是0号元素的地址,是常量,不能赋值

                                1.    指向数组元素的指针:

                            指针p既可以指向整型变量(数组名本身即为arr[ 0 ]地址,不需要加&

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值