C语言新手记:应用指针进行数组输入与输出

本文探讨了C语言中通过指针操作数组的三种常见方法:指针自增、使用数组末尾地址控制和引入辅助变量。第一种方法利用p++自增实现输入和输出,第二种方法简化了变量使用,直接比较指针与数组末尾地址,第三种方法通过辅助变量i改变指针位置,提供更高灵活性。每种方法都有其适用场景,理解它们有助于优化代码。
摘要由CSDN通过智能技术生成

偶然翻到一篇以前写下的想法,对数组输入时用指针进行定位而不是用数组元素下标,遂尝试着进行验证想法。
第一种是指针自增运算p++

#include<stdio.h>
int main()
{
    int a[10];
    int *p=a;

    for(int i=0; i<10; i++,p++)
        scanf("%d", p);

    for(int i=0,*p=a; i<10; i++,p++)
        printf("%d ", *p);

    return 0;
}

p++形式的第二代,减少了额外的变量使用,直接用数组末尾的地址进行控制:

#include<stdio.h>
int main()
{
    int a[10];

    for(int *p=a; p!=&a[9]; p++)
        scanf("%d", p);

    for(int *p=a; p!=&a[9]; p++)
        printf("%d ", *p);

    return 0;
}

第二种是引入辅助变量“ i ”来实现指针指向位置的变化

#include<stdio.h>
int main()
{
    int a[10];
    int *p=a;

    for(int i=0; i<10; i++)
        scanf("%d", p+i);

    for(int i=0; i<10; i++)
        printf("%d ", *(p+i));

    return 0;
}

第二种的好处是指针p可以在不影响循环体的情况下自由改变所指向的数组,灵活性要比第一种好不少。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值