作者HuangTzHuan ()
看板C_and_CPP
標題Re: [問題] 請問C如何取得file"寫入"位置
時間Thu May 5 18:16:34 2011
※ 引述《cloudlim (OswinC)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: VC++ (但寫的是C)
: 問題(Question):
: 各位先進前輩們好, 小弟無知有個小問題想打擾一下
: 我用mode "r+b"開啟一個binary檔後, 想獲得在檔案尾端輸出的位置
: 但C好似是輸入游標跟輸出游標共用(只有fseek)
: 所以如果我用fseek(file, 0, SEEK_END)再ftell(file)的方法
: 會有兩種不同情況發生:
: 1. 假設該檔案已存在3個byte 我得到的是3
: 需要再加上1才是接著寫入的位置
這裡我不太懂
如果 size 是 3,表示 0, 1, 2 有東西了
所以下一個要寫入的位置是 3 沒錯
為什麼要加一?
: 2. 假設該檔不存在 我得到的是0
: 不須加上1就是接著寫入的位置
: 在C++似乎可以用tellp method得到輸出游標位置
: 請問在C有沒有方法可以不用分辨檔案是否已存在的case
: 就直接得到輸出位置的漂亮方法呢? @@"
: 謝謝囉 :)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.49
推 cloudlim:阿..!!!!! 對喔 昏頭了我 XDDD 05/05 18:37
→ cloudlim:哈哈 好尷尬 超蠢的 QQ" 05/05 18:37