2 回答

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超8個(gè)贊
fseek最后一個(gè)參數(shù)最好不要直接指定一個(gè)數(shù)值,比如1,
要使用SEEK_CUR,SEEK_END,SEEK_SET
第二個(gè)參數(shù)表示相對(duì)于第三個(gè)參數(shù)的偏移,整數(shù)表示正向偏移,負(fù)數(shù)表示負(fù)向偏移,比如
fseek(fp,-size,SEEK_CUR);
從當(dāng)前位置向文件后方(比如文件有123三個(gè)數(shù)字,那么2在三的后方,3在2的前方)
fseek(fp,size,SEEK_SET);
從文件開(kāi)始位置向前移動(dòng)size
這里默認(rèn)size是正數(shù)

TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊
是的
int
fseek(FILE
*stream,
long
offset,
int
fromwhere);函數(shù)設(shè)置文件指針stream的位置。
如果執(zhí)行成功,stream將指向以fromwhere為基準(zhǔn),偏移offset(指針偏移量)個(gè)字節(jié)的位置,函數(shù)返回0。如果執(zhí)行失敗(比如offset超過(guò)文件自身大小),則不改變stream指向的位置,函數(shù)返回一個(gè)非0值。
實(shí)驗(yàn)得出,超出文件末尾位置,還是返回0。往回偏移超出首位置,返回-1,且指向一個(gè)-1的位置,請(qǐng)小心使用。
fseek函數(shù)和lseek函數(shù)類似,但lseek返回的是一個(gè)off_t數(shù)值,而fseek返回的是一個(gè)整型。
- 2 回答
- 0 關(guān)注
- 123 瀏覽
添加回答
舉報(bào)