不用函数反而可以,用了函数就不行了,指针不太懂,错误在哪?求大神帮忙#include void find(float s[][2],int *hang,int *lie){ int i,j,k=0,t=0; for(i=0;i

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/30 15:42:56
不用函数反而可以,用了函数就不行了,指针不太懂,错误在哪?求大神帮忙#include void find(float s[][2],int *hang,int *lie){    int i,j,k=0,t=0;    for(i=0;i

不用函数反而可以,用了函数就不行了,指针不太懂,错误在哪?求大神帮忙#include void find(float s[][2],int *hang,int *lie){ int i,j,k=0,t=0; for(i=0;i
不用函数反而可以,用了函数就不行了,指针不太懂,错误在哪?求大神帮忙
#include
void find(float s[][2],int *hang,int *lie)
{
 int i,j,k=0,t=0;
 for(i=0;i

不用函数反而可以,用了函数就不行了,指针不太懂,错误在哪?求大神帮忙#include void find(float s[][2],int *hang,int *lie){ int i,j,k=0,t=0; for(i=0;i
你要是想在find函数里把算得的值赋给主函数中定义的h和l的话,可以这么写
主函数中调用:find(a,&h,&l);//传入的是h和l的地址
find函数中:*hang=k; //分别把k和t的值赋给hang和lie指向的内容
\x05 *lie=t;
注意:指针本身是一个地址,如int *p,p的内容是一个指向整形数的地址,而*p才是取指针p指向元素的内容,你在find函数里的操作意味着令hang和lie分别指向k和t,而k和t的生命周期仅限于find函数,返回main函数后k和t的内容将被自动释放,这时候hang和lie便成了野指针,即指向未知,这是很危险的!
还有你定义的数组a[2][2]应该是float类型的吧,写成int型了