指针题目解析:

首先,记得运算符的优先级排序

1.运算符优先级

优先级运算符
1

 ++(后置自增)--(后置自减)、[]、 ()、

. (结构体/联合体成员对象访问)、-->(结构体/联合体成员对象指针访问)

2

++(前置自增)、--(前置自减)、+、-、~(按位取反)、!、(type)强转、&(取地址)、

sizeof、*(解引用)

3*(乘号) /(除号) %(取模)
4+(加号) -(减号)
5<<(左移)、>>(右移)、>>>
6<(小于)、>(大于)、<=(小于等于)、>=(大于等于)
7==(等于)、!=(不等于)
8&(按位与)
9^(按位异或)
10|(按位或)
11&&(逻辑与)
12||(逻辑或)
13?:(三目运算符)
14

=(赋值)、*=、/=、%=、+=、-=、<<= 、>>=、>>>=、&=、^=、

|=

15,(逗号)

 其次:数组名的各层含义:(char arr[]="abcdefg")

      1.在(arr)中,arr表示数组首元素的地址

      2.在sizeof(arr)中,arr表示整一个数组,计算的是整一个数组所占多少个字节空间 

      3.在(&arr)中,这里的arr表示整一个数组的地址,不是这一个数组的首元素的地址

      4.*arr中,这里的arr表示数组中首元素的地址。

再其次:知道什么是大小端

         整数:10000

 大端: 00  00   27   10   

小端: 10   27   00    00

再其次:知道操作符sizeof和strlen()函数的区别:

(1).sizeof是一个操作符,用来计算变量(类型)所占空间的大小,不关注内存中存放的具体内容,单位是字节。

          sizeof这一个操作符,计算返回的结果是size_t类型的,也就是无符号类型的。

(2).strlen()函数是一个库函数,需要头文件<string.h>,在C语言标准中专门计算字符串长度的,只能针对字符串从参数给定的地址后一直找‘\0’,统计‘\0’之前出现的字符个数。

再其次:知道指针数组所占字节空间大小(例如:int* arr[5]={1,2,3,4,5,})

1.在32位系统下和在64位系统下,指针所占字节空间的大小:

     32位系统下,占4个字节

     64位系统下,占8个字节

2.指针在解引用下,访问字节大小权限的不同

例如:

char* b =‘A’,虽然指针大小所占字节空间是(4/8),在解引用条件下,访问字节大小权限是1个字节。

int*  a=489,虽然指针大小所占字节空间是(4/8),在解引用条件下,访问字节大小权限是4个字节。

short* c=255,虽然指针大小所占字节空间是(4/8),在解引用条件下,访问字节大小权限是2个字节。

 ……

 --------------------------------------------------------------------------------------------------------------------------------

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
    char* c[] = { "ENTER","NEW","POINT","FIRST" };
    char** cp[] = {c+3,c+2,c+1,c};
    char*** cpp = cp;
    printf("%s\n", **++cpp);
    printf("%s\n", *-- * ++cpp + 3);
    printf("%s\n", *cpp[-2] + 3);
    printf("%s\n", cpp[-1][-1] + 1);
    return 0;
}

代码分析图:

代码结果如下:

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值