这个宏定义了什么?
发布时间:2020-12-16 03:29:19 所属栏目:百科 来源:网络整理
导读:我读了这块宏(C代码),并在解码它时感到困惑,知道它定义了什么.它定义了什么? #define sram (*((unsigned char (*)[1]) 0)) -广告 解决方法 我认为sram是“开始RAM”. unsigned char[1] 1个无符号字符的数组. unsigned char(*)[1] 大小为1的无符号字符的poin
我读了这块宏(C代码),并在解码它时感到困惑,知道它定义了什么.它定义了什么?
#define sram (*((unsigned char (*)[1]) 0)) -广告 解决方法
我认为sram是“开始RAM”.
unsigned char[1] 1个无符号字符的数组. unsigned char(*)[1] 大小为1的无符号字符的pointer to an array. (unsigned char (*)[1]) 0 将0转换为指向无符号字符大小1的数组的指针. *((unsigned char (*)[1]) 0) 在位置0读取一些内存,并将结果解释为无符号字符大小1的数组. (*((unsigned char (*)[1]) 0)) 到avoid 1+5*8+1==42. #define sram (*((unsigned char (*)[1]) 0)) 将变量sram定义为从位置0开始的内存,并将结果解释为无符号字符大小为1的数组. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |