我已經致力於學習C,我很擅長Python/PHP/Bash,但是我決定我受限於C中不流利。但是我無法想象在沒有列表和哈希的語言中工作,也許我只是在跳槍,但肯定有'標準'收集庫。我在GNU標準庫中看不到任何內容,有什麼建議嗎?C語言標準集合它們在哪裏?
回答
C比您以前的水平低。 C外部沒有標準集合。
雅,OP會驚訝,甚至沒有函數重載,你不能在函數中間聲明變量 – Pyrolistical 2010-03-23 18:50:38
@Pyrolistical C99允許函數中間的變量聲明 – amrox 2010-03-23 19:00:25
我不清楚,我覺得對於這個問題,我認爲把「標準」的引用清楚地表明我要求制定一個社區標準。 – flaxeater 2010-03-23 20:26:39
有沒有C.是一個非常低級的語言真是標準的集合(相對於C++和更「現代」的語言)
C++通過Standard Template Library添加這些。大多數「集合」(如哈希和列表)都基於面向對象或通用編程技術(不同於通過約定)在C.
也許你應該試試看glib。雖然它不像C++的STL那樣是一個標準,但它是一個經過驗證的庫,已在很多應用程序中使用。
有沒有「標準」(如在ISO C標準的一部分)容器庫,至少不是作爲C99的。我見過幾個第三方嘗試;都有一定程度的損失或其他。
C有一個非常原始和微薄的工具包;我把C編程比作建築,只有一把手鋸和一把羊角錘。
沒有標準,但有一個很好的替代品是遠比glib簡單:戴夫漢森的C Interfaces and Implementations。它包括幾個有效的收集抽象和一些其他有用的模塊。該軟件是免費的,該書值得購買。
根據您的系統,您可能會在sys/queue.h中找到您要查找的內容,其中包括「單鏈表,雙鏈表,簡單隊列和尾部隊列」的實現。
- 1. C#Authcookie集合在哪裏?
- 2. Angular/React - 它們在哪裏適合?
- 3. C++標準庫的標題在哪裏
- 4. 用什麼語言編寫C和C++標準庫?他們的源代碼在哪裏?
- 5. C#4.0 Dynamic vs Expando ...它們在哪裏適合?
- 6. WCFExtras XmlComments ...它們在哪裏?
- 7. 當語言符合功能語言的標準嗎?
- 8. TextMate語言解析器在哪裏?
- 9. 語言翻譯適合MVC模式在哪裏?
- 10. 跨語言編碼標準?
- 11. 標準化語言轉換?
- 12. Kohana活動,在哪裏放置它們
- 13. 推送通知,它們在哪裏?
- 14. 在哪裏可以下載C的開源語言?
- 15. 我在哪裏可以找到C語言的Lisp閱讀器?
- 16. Grails在哪裏查詢標準資格
- 17. Magento的GET語言集合
- 18. WinForms製圖:X軸標籤 - 它們在哪裏?
- 19. jQuery Mobile圖標我在哪裏可以找到它們?
- 20. C + extern聲明 - 把它們放在哪裏
- 21. 爲什麼人們爲編程語言創建標準
- 22. 語言Databasic起源於哪裏?
- 23. 應該在哪裏使用System.Collections.Concurrent集合?
- 24. 哪裏定義_counter在Rails 3集合
- 25. C++標準在哪裏定義浮點類型的值範圍?
- 26. 我在哪裏可以得到C++標準手冊?
- 27. 你在哪裏跟蹤新的C++標準的發展?
- 28. C++中存儲的非標準函數聲明在哪裏?
- 29. c標準頭文件對應的代碼在哪裏?
- 30. 重複在哪裏()vs多個集合在c#
如果你沒有其他理由而不是「被限制」,我建議你開始學習C++。 C++具有向量,列表,除了散列表外,幾乎所有你想要的東西,它將以C++ 0x添加,並且已經在現代編譯器中可用。 – Thomas 2010-03-23 18:52:00
我真的覺得需要更多地熟悉C語言,因爲我使用VHL語言用戶的基礎設施很多,而不是以C++,bash/PHP/Python爲主。 – flaxeater 2010-03-23 20:28:03