C STL VC fread函式的陷阱

2021-04-14 05:30:00 字數 459 閱讀 1614

如果想實現從某個檔案中一次次n個位元組般讀出來,那建議不要用

read = fread(buff,n,1,data_file);

因為就算當檔案的位元組數比n大,但這時strlen(buff)絕不是n個位元組大小!!也不是read個位元組大小!!

查幫助文件,可知,read是指成功讀入的單元塊數,這裡對應的就是,read要麼是1,要麼是0(由第三個引數決

定)!那是不是沒辦法做了呢?辦法是有的,stl的設計者想得很周到!方法如下:

ifstream in("file.txt");

const int sz = 4096;

char buf[sz];

while(in.getline(buf, sz))

但這是不是就說fread沒用呢?應該說要看不同的場景需要。假如該檔案是由乙個結構體的集合,這樣

這檔案的大小就是n個結構體的位元組大小,這時fread就大派用場了!

jquery mobile AJAX特性的陷阱

簡單情況是 mvc 重定向,url不變 試了n種方式,跳來跳去,無解,服務端跳,寫js跳,生成跳轉中間頁跳。失敗 後來一看,明明已經跳到新頁了,樣式什麼還是原頁的,有點火大了。出去溜一圈,喝杯水,和同事東拉西扯一通。回頭一看,突然反應過來,這不是ajax的效果麼,坑我半個多小時。為加驗證,是手動呼叫...

最早的公鑰演算法 單向陷門函式

陷門原指bug漏洞,這裡卻巧妙的成為非對稱密碼演算法的科學方法。這種非對稱密碼演算法比rsa早7年。這種陷門單向演算法函式可以實現公鑰加密,但無法做資料簽名,還不是完善的非對稱演算法。單向陷門函式 trapdoor one way function 滿足下列條件的函式fff 1 正向計算容易,即如果...

concat 和 group concat的陷阱

group concat mysql中group concat函式能將相同的行組合起來 完整的語法如下 group concat distinct 要連線的字段 order by asc desc 排序字段 separator 分隔符 使用示例 select from aa id name 1 10...