在看EXAM13文件枚舉的程序中遇到不明白的地方,求指導(dǎo)! for ( FileCount = 1; OldFileCount < FileCount; OldFileCount ++ ) { if ( FileNameBuffer[ OldFileCount ].Attr & ATTR_DIRECTORY ) { strcpy( mCmdParam.Open.mPathName, FileNameBuffer[ OldFileCount ].Name ); CH375vStartCluster = FileNameBuffer[ OldFileCount ].DirStartClust; /* 當(dāng)前目錄的上級(jí)目錄的起始簇號(hào),便于用相對(duì)路徑打開,比完整路徑名速度快 */ i = CH375FileOpen( ); if ( i == ERR_SUCCESS ) return( ERR_MISS_DIR ); /* 應(yīng)該是打開了目錄,但是返回結(jié)果是打開了文件 */ if ( i != ERR_OPEN_DIR ) return( i ); if ( OldFileCount ) CurrentDirStartClust = CH375vStartCluster; /* 不是根目錄,獲取目錄的起始簇號(hào) */ else { /* 是根目錄,獲取根目錄的起始簇號(hào) */ if ( CH375vDiskFat == DISK_FAT32 ) CurrentDirStartClust = CH375vDiskRoot; /* FAT32根目錄 */ else CurrentDirStartClust = 0; /* FAT12/FAT16根目錄 */ } CH375FileClose( ); /* 對(duì)于根目錄一定要關(guān)閉 */
1、當(dāng)OldFileCount為0時(shí),其中的FileOpen()實(shí)現(xiàn)的是什么? 2、FileOpen()后面的注釋說“打開目錄,僅為了獲取目錄的起始簇號(hào)以提高速度 ”,這句話沒明白什么意思,可不可以解釋一下?