看板 LinuxDev 關於我們 聯絡資訊
請問一下 #include <stdio.h> #include <string.h> int main(int argc, char *argv[]) { char buf[100]; FILE *fp=fopen("qq.txt", "a"); fseek(fp, 50, SEEK_SET); 這裡的seek_set是指 檔案開頭呢 還是檔案最後 因為用'a' mode open file memset(buf, '1', 100); fwrite(buf, 1, 5, fp); fclose(fp); return 0; } 這裡如果qq.txt已經存在的話 fseek裡面的50好像不管設多少 fp都是指到qq.txt內容的最後面 假如qq.txt 內容是 ttttt好了 程式碼執行後就會變 ttttt11111 所以那個50的指定是沒用的??? 目的是想說 假設qq.txt改為mtdblock/1 如果執行此程式 是不是就會 直接把1寫到mtdblock/2 而且是從mtdblock/2的開頭開始寫 部會從第50開始寫? 還是我觀念有錯誤 這樣講好了 我的目的就是 : 假設mtdblock/1 範圍是從1到1000好了, 我想在此範圍裏面的500到600 全部設為0xff的話 該怎麼做呢?? 然後又不會影響其他範圍內容?? Thanks~ ^^ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.166.170.253
Neo1978:要操作 mtd block device 直接用 open/read/write/close 05/05 22:47
Neo1978:就可以了... 05/05 22:48
frankou:會從後面開始寫會不會是因為用"a"開啟? 05/06 10:48