设为首页 加入收藏

TOP

指针在函数中的调用实例(一)
2014-07-19 22:52:23 来源: 作者: 【 】 浏览:173
Tags:指针 函数 调用 实例

  问题:定义函数f(),其形参是float型,现在想通过函数f()调用先前定

  义的整型数,通过调试总结出如下一些经验,有的地方尚需要官方

  或者资深高手给予指点。

  #include "stdio.h"

  #include "stdlib.h"

  #define N 8

  float Buf[N];

  unsigned int *Ptr;

  void f(float x[N])

  {

  int i;

  for(i=0;i

  {

  x[i]=x[i]*i;

  printf("%f\n",x[i]);

  }

  }

  void main(void)

  {

  int i;

  Ptr=NULL; //NULL在文件stdio.h中定义过。

  Ptr=(unsigned int *)malloc(N*sizeof(int)); //注意一定是要开辟N个int型的字节长度,不然编译会出错。

  //printf("%ld\n",Ptr);

  for(i=0;i

  {

  *(Ptr+i)=i;

  }

  for(i=0;i

  {

  Buf[i] = *(Ptr+i);

  }

  //下面调用函数f 处理外部RAM中的数

  f((float *)(Ptr)); //请问:这样调用函数有问题吗

  //f(Buf); //这样调用则不会有问题。

  }

  说明:若这样调用函数:f((float *)(Ptr)),则输出结果如下图A1:

 

  A1

  若这样调用函数f(Buf),则输出如下图A2所示:

 

  A2

  这说明像f((float *)(Ptr))这样调用函数是有问题的,具体原因就慢慢体会吧,我暂时也不能明确道出个所以然来。

   

首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇time_t 和 tm 结.. 下一篇C语言对数组名取地址

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C语言指针从入门到基 (2025-12-26 05:21:36)
·【C语言指针初阶】C (2025-12-26 05:21:33)
·C语言指针的定义和使 (2025-12-26 05:21:31)
·在 Redis 中如何查看 (2025-12-26 03:19:03)
·Redis在实际应用中, (2025-12-26 03:19:01)