- 论坛徽章:
- 0
|
unsigned int SPACE_SIZE = 0;
int _RetrialInodeTable()
{
int flag = NORMAL;
if ( disk == NULL )
{
flag = DISK_ERROR;
goto end;
}
long position = ftell( disk );
rewind( disk );
int i = 0;
for ( ; i<__INODE_NUM; i++ )
{
size_t readed = 0;
readed = fread( (void *)&INODE_TABLE[i] , __INODE_SIZE , 1 , disk );
if ( readed != 1 )
{
flag = DISK_ERROR;
goto end;
}
}
fseek( disk , position , SEEK_SET );
clearerr( disk );
end:
return flag;
} |
另,在包含的.h中有 extern unsigned int SPACE_SIZE; 的声明。
问题:在上面代码段里的for循环前, SPACE_SIZE =0, 循环之后成了 0xcccccc00 ?
想不通为什么会改变...
学期末做操作系统课程设计,可能头昏了,希望有人能指点下... |
|