OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4646|回复: 8

C语言问题

[复制链接]

60

主题

124

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
478
金钱
478
注册时间
2017-11-22
在线时间
136 小时
发表于 2018-9-5 11:41:32 | 显示全部楼层 |阅读模式
1金钱
图中, 函数的servo输入的是 jaw,, buf【3】=1000 ,buf【4】=1800,为什么输出的jaw.ANGLE=0,ANGLE=180, 不是应该jaw.ANGLE=180吗
86095485-784A-4fd3-9E0F-1B462FBC75C5.png
BD62249D-C7D5-47e1-BC16-76DB78EB2B16.png

最佳答案

查看完整内容[请看2#楼]

这不是定义的问题,貌似只能用指针,解决了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

60

主题

124

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
478
金钱
478
注册时间
2017-11-22
在线时间
136 小时
 楼主| 发表于 2018-9-5 11:41:33 | 显示全部楼层
正点原子 发表于 2018-9-6 01:43
自己慢慢找,这种纯软件问题就不要问了。。

这不是定义的问题,貌似只能用指针,解决了
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2018-9-6 01:43:19 | 显示全部楼层
自己慢慢找,这种纯软件问题就不要问了。。
回复

使用道具 举报

2

主题

756

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4163
金钱
4163
注册时间
2017-10-24
在线时间
251 小时
发表于 2018-9-6 08:18:43 | 显示全部楼层
请贴出完整的代码,包括结构体的定义。仅凭目前的部分代码无法确定问题。
十六进制带我飞。
回复

使用道具 举报

0

主题

109

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2018-9-2
在线时间
8 小时
发表于 2018-9-6 08:33:50 | 显示全部楼层
请贴出完整的代码,包括结构体的定义,跟随楼主
回复

使用道具 举报

3

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
177
金钱
177
注册时间
2017-9-27
在线时间
33 小时
发表于 2018-9-6 09:22:16 | 显示全部楼层
本帖最后由 Bigflish 于 2018-9-6 09:24 编辑

设个断点,调试一下啊,你怎么就敢确定你的buf[4]是1800,或许你的程序不是错在这呢或是你在使用之前,输出buf[4],看看是不是1800
一步一步排查
回复

使用道具 举报

60

主题

124

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
478
金钱
478
注册时间
2017-11-22
在线时间
136 小时
 楼主| 发表于 2018-9-6 10:13:07 | 显示全部楼层
Bigflish 发表于 2018-9-6 09:22
设个断点,调试一下啊,你怎么就敢确定你的buf[4]是1800,或许你的程序不是错在这呢或是你在使用之前,输出 ...

解决了,用指针
回复

使用道具 举报

60

主题

124

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
478
金钱
478
注册时间
2017-11-22
在线时间
136 小时
 楼主| 发表于 2018-9-6 10:13:50 | 显示全部楼层
Bigflish 发表于 2018-9-6 09:22
设个断点,调试一下啊,你怎么就敢确定你的buf[4]是1800,或许你的程序不是错在这呢或是你在使用之前,输出 ...

我肯定用printf串口打印过才发出来呀
回复

使用道具 举报

3

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
177
金钱
177
注册时间
2017-9-27
在线时间
33 小时
发表于 2018-9-6 21:41:18 | 显示全部楼层
你这么一说,我是明白了。这不是指针不指针的问题。。。。好好看看C语言函数中关于形参的说明你在调用的时候肯定传入的是JAW做函数的形参,但是形式参数是不做运算的,就是说(函数运算之后,形式参数的内容是不会改变的)
好比

   void ex(int a,int b)
   {int tem;
   tem=a;
     a=b;
    b=tem;
     }


    void main()
     {int a=100;
      b=200;
     ex(a,b);
     /*do  print a,b*/
     }


   你说,a,b的值变没变
    这是一个道理
  所以好好看看C

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 02:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表