打印

一个结构指针的疑问

[复制链接]
1486|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
472666GAQ|  楼主 | 2010-5-13 07:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式



unsigned char FAT32_Buffer[512];
struct FAT_Item               
{
unsigned char Item[4];
};


struct FAT32_FAT
{
struct FAT_Item Items[128];  
};

void ******(unsigned long Curr_cluster)
{
   struct FAT_Item  *pItem;
   struct FAT32_FAT *pFat;
   pFat=(struct FAT32_FAT *)(FAT32_Buffer);//这样写没问题
   pItem=&(pFat->Items[Curr_cluster%128]);//这样写没问题
   但是这样写:
   pItem=&((struct FAT32_FAT *)(FAT32_Buffer)->Items[Curr_cluster%128]);//这样写为啥就会出现错误呢
}

相关帖子

沙发
ayb_ice| | 2010-5-13 08:39 | 只看该作者
直接用个二维数组代替

使用特权

评论回复
板凳
ShakaLeo| | 2010-5-13 08:39 | 只看该作者
把有问题的那句改成
pItem=&(((struct FAT32_FAT *)(FAT32_Buffer))->Items[Curr_cluster%128]);
就好了,应该是优先级问题

使用特权

评论回复
地板
maomao2126| | 2010-5-13 08:57 | 只看该作者
优先级的问题,如楼上用()修饰一下就OK了

使用特权

评论回复
5
472666GAQ|  楼主 | 2010-5-13 10:53 | 只看该作者
谢谢大家了  :lol

使用特权

评论回复
6
znmcu| | 2010-5-13 12:38 | 只看该作者
不知你为何把 函数名 换成*******,这些代码源于znFAT,敬请注名出处。谢谢!
        +-----------------------------------------+
        |振南电子 原创程序模块 znFAT文件系统 5.13 |
        +-----------------------------------------+

  此源码版权属 振南 全权享有,如欲引用,敬请署名并告知
        严禁随意用于商业目的,违者必究,后果自负

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

102

主题

285

帖子

2

粉丝