c++ - 关于linux shell函数与C函数的关系()

标签 c++ c linux shell

比如我以为shell中的ln命令是C提供的link()和symlink()实现的,于是查看了ln的src,好像没有用到。

最佳答案

是的,很多Linux命令都是用C写的;许多 C 程序可能会使用 C 库函数,如 link()symlink() .各种 Linux shell(例如 sh、csh 和 bash)本身是用 C 编写的,并且也使用 C 库调用。

然而...

link() 和 symlink() 都是符合 POSIX 标准的包装函数,它们不是“标准 C 库”的一部分。因此,“ln”命令不使用它们。参见 unistd.h了解更多详情。

另见 What is included in the C standard library .

关于c++ - 关于linux shell函数与C函数的关系(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66864832/

相关文章:

linux - 仅在复制所有目录后才复制文件

linux - 如何创建需要输入root密码才能获得root访问级别的用户

c++ - 对两个大文件中的子事件对进行计算

c++ - 确保一个类不是抽象的

c - 将结构体的 fwrite() 和 fread() 部分写入二进制文件

c - union 无法解码字节数组

c++ - .exe 文件在 QtCreator 中构建后停止并最终启动?

c++ - 与 telnet 客户端协商回显

c++ - Windows 中的 pipe fork 和 execvp 类似物

linux - 即使在大括号中也能在 strace 中显示完整的参数