我是一名物理专业的学生,主要是用Python和Matlab编程,现在进入C语言以提高我的模拟性能。
简单的问题:Python中有指针吗? Matlab中有指针吗? 如果是的话,我可以使用与C中类似的“轻松”吗?
我知道在Python和Matlab的高级别背后,有很多指针在起作用。 问题是:我可以在Python或Matlab中明确地使用这个C代码:
int *p; int someValue = 1; p = &someValue; doSomethingForMe = callSomeFunction(p);
我知道无论如何都可能没有意义(对于大多数应用程序)。 我只是想学习。
你会经常听到Python有免费精选名字大全 ,而不是传统意义上的“变量”。 它也没有“指针”,因为这样的概念只有在低级别工作时才有意义,比如C语言。(因此,如果你在Python中使用C兼容性库,你可以得到“指针”,比如ctypes
但是,这样的指针仅用于与C的互操作性。)
您在C中使用指针的大部分function都以Python中的其他forms出现。 例如:
MATLAB与Python有不同的变量概念。 在MATLAB中,变量是具有某些维度的矩阵。 写x = y
有效地将x = y
复制到x
(适当地设置x
s维度)。 MATLAB内部进行优化以避免实际复制数据,除非必要,但对于程序员来说,似乎x
和y
是单独的矩阵。
除非您正在处理已编译的MEX扩展(使用其他语言编写,如C),否则MATLAB也没有指针。 与Python一样,您可以在不需要指针的情况下传递内容(例如,多个输入和输出参数)。
Python显然可以指向ctypes
库。 此外,您可以在Python中模拟指针的概念 ,就像在这个问题中一样。
在Matlab中,你也没有指针。
需要了解更多c/c++开发分享python中的指针,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!
以上就是c/c++开发分享python中的指针相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/980695.html