gpt4 book ai didi

c++ - 不同的编程语言和调用约定

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:20:24 24 4
gpt4 key购买 nike

根据维基:

Different programming languages use different calling conventions, and so can different platforms (CPU architecture + operating system). This can sometimes cause problems when combining modules written in multiple languages

那么我在 Python 中调用 C/C++ 函数(从 .so/.dll 导出)时应该小心吗?如果是,我应该注意什么?

最佳答案

Python 和 C 之间的调用是一个已解决的问题,因此您通常不必担心任何事情——尤其是因为 Python 是用 C 编写的。

当一个平台上的多种语言都是独立开发的,从汇编程序中单独引导时,所描述的问题就更多了。例如,众所周知,C 和 FORTRAN 之间以及 C 和 Pascal 之间的调用问题曾经是众所周知的,当时这三种语言大致相当。旧的 Mac 工具箱主要是使用 Pascal 调用约定用汇编程序编写的,早期的应用程序开发人员使用 Borland Pascal。但是后来像 Symatec 的 THINK C 这样的 C 编译器出现了,那些程序员不得不特别担心如何转换参数类型和字符串约定(Pascal 字符串在开头带有一个长度字节,当然 C 字符串在末尾有一个 0。)

关于c++ - 不同的编程语言和调用约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9170393/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com