第37节 面试题分析

-------------------------------------资源来源于网络,仅供自学使用,如有侵权,联系我必删.

第一:

指针运算
必考知识点

#include <stdio.h>

//二维数组名代表 数组首元素
//二维数组是以一维数组存在的
//指针运算

void main()
{
    int TestArray[5][5] = { {11,12,13,14,15},
                            {16,17,18,19,20},
                            {21,22,23,24,25},
                            {26,27,28,29,30},
                            {31,32,33,34,35}
                          };

    //TestArray[5][5]的位置
    int* p1 = (int*)(&TestArray + 1);   
        
    //TestArray + 1  数组第二个位置 
    //*(TestArray + 1) 数组第二个位置({16,17,18,19,20})的地址
    // (*(TestArray + 1) + 6) 16是第0位,向后移6位是22
    int* p2 = (int*)(*(TestArray + 1) + 6);      

    //*TestArray 代表数组{11,12,13,14,15} ;  *(*TestArray) 代表11
    //*(*(TestArray + 1)) 代表 16
    //TestArray + 3 代表 {26,27,28,29,30} ; *(TestArray + 3) + 3 代表 29的地址
    //p1代表{31,32,33,34,35} p1[-8]代表35向后数8位 是 27
   
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值