我正在教自己C(來自Java)。我非常欣賞這種語言,我正在學習的主要原因之一是,我可以利用內置於Java中的JNI功能在必要時編寫本機代碼。我的問題主要是關於Windows API。我可以使用C的函數和功能嗎?Windows API可以使用C嗎?
Windows API是否與純C代碼兼容,還是包含只能由C++代碼使用的類和類?另外,如果我在Windows計算機上將共享庫編譯爲(lib.sl NOT lib.dll),它是否可以在另一臺計算機(Mac/Linux)上運行?
我正在教自己C(來自Java)。我非常欣賞這種語言,我正在學習的主要原因之一是,我可以利用內置於Java中的JNI功能在必要時編寫本機代碼。我的問題主要是關於Windows API。我可以使用C的函數和功能嗎?Windows API可以使用C嗎?
Windows API是否與純C代碼兼容,還是包含只能由C++代碼使用的類和類?另外,如果我在Windows計算機上將共享庫編譯爲(lib.sl NOT lib.dll),它是否可以在另一臺計算機(Mac/Linux)上運行?
......並且很多時候你不能甚至可以在另一臺Windows機器上使用它。即在不同的體系結構上。 – 2012-01-15 02:52:40
@VladLazarenko很頻繁?你有沒有可移植的東西的參考? – 2012-01-15 03:00:13
@cli_hlt無賴!當你只擁有一個平臺時,我討厭C的缺乏可移植性。有沒有辦法從Windows機器上爲UNIX創建共享庫? – bgroenks 2012-01-15 04:03:11
像其他人所指出的Win32 API是純粹的C.它意味着,一旦你掌握了它,你就會知道操作系統的一切工作。通常與其他操作系統也是如此。如果您使用MFC/COM +或Java包裝器,即使您可以構建優秀的程序,情況也完全相反。
Win32 API是純粹的C. – 2012-01-15 02:45:23
非常好的選擇。讓我知道,當你下降到組裝者的水平,甚至一些Verilog :) – 2012-01-15 02:53:33
@VladLazarenko我們需要更多的人在這裏弗拉德,還有誰會做重任! ;):P – ScarletAmaranth 2012-01-15 03:06:39