用於存儲文件中字符索引的典型類型是什麼?我目前使用long unsigned int
,但這有意義嗎?我應該用std::size_t
來代替嗎,還是這樣做更沒意義?文件索引
文件索引
回答
正如Mike Seymor所說,如果您使用C++ io流,則std :: streampos是表示文件位置的標準類型。見
http://www.cplusplus.com/reference/iostream/streampos/
注意,標準::爲size_t可能不正確。例如,在32位系統上,std :: size_t將是一個32位無符號整數,而系統可能支持大於2^32字節= 4 GB的文件。
FWIW,在POSIX世界中,有一個(帶符號)整數類型off_t,用於表示文件大小和偏移量。使用各種宏(例如Linux上的_FILE_OFFSET_BITS = 64),可以將off_t重新定義爲64位類型。
如果你在談論ASCII字符,他們不會有127以上的值。因此,使用unsigned char數據類型就足夠了。
我不是在談論ASCII字符;我正在談論任何特定角色在文件中的位置。 – Maxpm 2011-03-28 13:36:31
你可能安全與兩者;基本上你想能夠存儲max_file_size的值;
一個文件的字節大小被定義爲一個長的結構stat;在64位平臺上,size_t可能總是被定義爲64位數字,在32位數字上被定義爲32位數字等;除非你使用奇怪的編譯器。
我會去長。 std :: size是語言特定的,我傾向於在這裏使用特定於操作的類型。但我再次看到使用std :: size_t也沒有問題
std::streampos
是表示字符流(包括文件)中位置的標準類型。
你想不想也代表「無效索引」?如果是這樣,爲什麼不只是使用ssize_t
。
- 1. lucene文件索引
- 2. 索引PDF文件
- 3. Yiii - 索引文件
- 4. Lucene.NET索引文件
- 5. 文本文件索引?
- 6. 索引文檔文件
- 7. 擊:複製索引文件,保存文件索引
- 8. 文件夾中的文件索引
- 9. 索引文件夾中的文件
- 10. 源文件索引[apache]
- 11. Canonical,SiteMap和索引文件?
- 12. 錯誤而索引文件
- 13. 未定義索引:文件
- 14. Solr:索引fb2文件
- 15. lucene如何索引文件?
- 16. Solrj從Android索引文件
- 17. SOLRJ和索引文件
- 18. Codeigniter索引文件問題
- 19. 創建索引文件Java
- 20. SonarQube 4.3 - 索引的文件
- 21. 文件索引器實現
- 22. 線性索引文件
- 23. 列表從文件索引
- 24. db索引文件執行
- 25. 搜索的文件引用
- 26. Laravel缺失索引文件
- 27. 文件系統索引
- 28. Java/Android:SQLite或文件索引?
- 29. 索引的平面文件
- 30. html文件的lucene索引
什麼是一個字符的索引? – 2011-03-28 12:23:28
@Gunner第n個字符。所以如果我有一個帶有字母的文件,'G'的索引是6. – Maxpm 2011-03-28 12:24:49