[求助]这段代码看不懂,请教一下

前几天找公司的孔工程师帮我调了一个F340的程序,有一个地方看不太懂

/* 如果MY_ADC.TXT文件已经存在则添加数据到尾部,如果不存在则新建文件 */

i = 55; mCopyCodeStringToIRAM( mCmdParam.Open.mPathName, "/TEST.TXT" ); /* 文件名,该文件在根目录下 */ i = CH375FileOpen( ); /* 打开文件 */ if ( i == ERR_SUCCESS ) { /* 文件存在并且已经被打开,移动文件指针到尾部以便添加数据 */

i = 55; CH375vFileSize+=CH375vSectorSize-1; mCmdParam.ReadX.mSectorCount = 1; mCmdParam.ReadX.mDataBuffer = FILE_DATA_BUF; i = CH375FileReadX( ); CH375vFileSize-=CH375vSectorSize-1; mStopIfError( i ); } 1.请问这段程序里为什么不用CH375ByteLocate()将文件指针指向文件的尾部呢? 2.还有FILE_DATA_BUF我看程序只在开始时定义了其长度为512字节,而没有定义他的起始地址,请问FILE_DATA_BUF和DISK_DATA_BUF两者有何不同 3.i=55这个有什么特别的意思

(1)这是读文件,没有必要将文件指针指向文件的尾部,如果是追加,那么应跳至文件末尾,可以用CH375ByteLocate()或CH375FileLocate() (2)DISK_DATA_BUF主要用来存放U盘读写过程中涉及到的一些重要信息,如:目录项、FAT表;FILE_DATA_BUF是用来存放用户读写的数据 (3)这是调试时用的,i默认值是0,CH375FileOpen成功返回值也是0,初始化一下,以免混淆


非常感谢!!!


只有登录才能回复,可以选择微信账号登录