【C语言习题】30.使用指针打印数组内容

作者 : admin 本文共476个字,预计阅读时间需要2分钟 发布时间: 2024-06-14 共1人阅读

文章目录

    • 作业标题
    • 作业内容
    • 2.解题思路
    • 3.具体代码

作业标题

使用指针打印数组内容

作业内容

写一个函数打印arr数组的内容,不使用数组下标,使用指针。

arr是一个整形一维数组。

2.解题思路

先定义一个数组,使用指针打印数组内容那就是说我们可以通过对指针解引用,来访问对应的数组元素。

我们可以设置一个for循环,每次对指针进行自增或其他操作,来达到对不同元素的访问。

注意不要越界访问哦。

3.具体代码

int main()
{
    int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
    int* p = &arr[0];
    int i = 0;
    int sz = sizeof(arr) / sizeof(arr[0]);
    for (i = 0; i < sz; i++)
    {
        printf("%d ", *(p + i));
    }
    return 0;
}

打印:

【C语言习题】30.使用指针打印数组内容插图


需要注意的是

这里p的指针类型不能写成char*

因为如果pchar*类型的,这里的p += 4;会只读取每个int类型(int类型4字节,char类型1字节)的第一个字节,跳过每个int类型的后3个字节。

数字小的时候可能看不出什么,但是数字大了就可能会打印奇怪的东西。

本站无任何商业行为
个人在线分享-虚灵IT资料分享 » 【C语言习题】30.使用指针打印数组内容
E-->