c - 可以直接在命令行调用函数吗?
问题描述
例如,如果我有以下功能
void printText(char text [100]){
printf("%d", text);
}
然后我可以在命令行中执行此操作吗
printText(Hello World)
然后得到我的预期输出
Hello World
解决方案
这取决于你的外壳。一些 shell 确实支持函数。在bash
POSIX shell 和可能的其他 shell 中,以下是正确的语法:
printText() {
printf '%s\n' "$1"
}
printText 'Hello World'
如果您的意思是字面上的问题,那么不,即使不提及函数所在的文件,也无法调用函数。用于编写函数的语言无关紧要。
但是可以编译一个 C 函数并以某种方式从 shell 调用它吗?是的。如果您从该函数创建了一个共享库(unixy 系统上的共享对象或 Windows 上的 DLL),则可以。这样做需要一个工具,但这样的工具可能会退出。(Windows 还支持COM 对象和许多衍生技术。其中一些甚至可能使任务更容易。)
(我不知道这样的工具是否真的存在或者它们是什么,因为软件推荐在 StackOverflow 上是题外话。我会说这样的工具可以围绕诸如libffi 之类的库构建。)
推荐阅读
- c - Minifilter 驱动程序 Windows 10 之前和包括 1809 和 1903 及更高版本之间的差异(在创建文件时调用 FileRenameInformation)
- laravel - 播种具有多个关系的表?
- documentation - 开发者文档生成器
- javascript - 恢复场景后如何防止精灵静止不动?移相器 3
- java - 用于检查 Internet 速度的 Java API(上传/下载)
- algorithm - 在动态编程中,我总是必须填满整个表格吗?
- r - 询问如何在 R 中使用 ggplot 制作世界热图?
- python - 类型提示特定格式的字符串?
- php - JSON解码数组到字符串转换错误
- multithreading - 使函数线程安全的类