定义一个函数:
int tiltang(float *x0, float *y0, float *xt, float *yt, int npoint, float * theta, int * iarea, float arealim);
int tiltang(float *x0, float *y0, float *xt, float *yt, int npoint, float * theta, int * iarea, float arealim)
{
...x0[i]...
}
然后在另一个函数调用它时:
float x[n],y[n],xs[n],ys[n];
int n,iarea;
float thetaf, arealim;
tflag = tiltang(x,y,xs,ys,n,&thetaf,&iarea,arealim);
这里前四个变量前为什么不加&,而&thetaf?前四个变量是指向数组的指针吗?怎么可以这么用:x0[i]
还有一个问题我怎么在同一个.c文件里的多个函数共用一个变量,这个变量有个初始值,初始值是访问这个文件时外面输入的,而且所有函数都能改变这个变量值
如何定义一个函数返回一个数组?
具体点,谢谢啦
这段代码我是要在python中用,这个函数返回的数组相当于一个地址,我怎么在python用啊
追答抱歉我对python这个语言不熟悉,帮不上你的忙了..
前四个也对数组的值修改了,
&我记得我学的时候是取的内存地址
那个,我括号之前的回答,不是说明这个问题的。
这里前四个变量前为什么不加&(数组名作为参数,传的值就是一个地址)
而&thetaf?(要取地址赋值给指针)
前四个变量是指向数组的指针吗?(应该说是指向数组首地址的指针)
怎么可以这么用:x0[i](指针和数组有一些共性)
好像记起来了,~~
就上面那个函数,我做成一个.so文件,在python中调用,输入的变量可以使list吗?
比如那个文件名叫example.c
编译成example.so
import example
有一个list:a[],
我能这样用吗:
example.tiltang(a[],...)
刚睡醒。
如果做成一个.SO文件,还是建议,在哪儿分配的空间在哪儿释放吧。
给数组里赋值倒没什么。O(∩_∩)O~,如果觉得回答可以,望采纳。