【发布时间】:2014-07-24 01:26:03
【问题描述】:
我已经为 Windows 开发了很长时间,主要是 WinApi(和 .Net)。
我已经开始学习基本的 Linux,我有一些关于差异的问题:
-
在 Windows 中,我几乎没有使用过 C 标准库。
如果我需要 API,我会搜索 MSDN 并找到合适的库\函数。
看起来,在 Linux 中,C 标准库就是一切。
我看到的所有代码示例都使用了标准库(而不是使用一些 Linux 内部函数,例如 Linux“CreateFile”)。
这真的是如何编写“正确”的 linux 代码吗?使用 C 标准库?
如果我想读取文件,或者分配内存是 fopen\malloc 的路要走?p>
-
如果我的第一个问题的答案是肯定的(我猜会的)
与强大的 WinApi 相比,C 标准库是无能为力的。
假设我希望获取正在运行的进程列表 (CreateToolhelp32Snapshot) 或创建线程或进程 (CreateThread\CreateProcess),我应该如何在 Linux 中执行此操作?
-
文档。
在 Windows 中,所有我需要的都可以在 MSDN 中找到。
如果我有一个“我该怎么做”的问题(如上面的问题),我应该去哪里?
我的主要文档来源在哪里。
非常感谢, 迈克尔。
【问题讨论】:
-
当然你不只是使用标准 C 库。您将如何访问特定于 Linux 的功能?
标签: c linux windows winapi clib