嵌入式开发者社区

标题: 代码的问题 [打印本页]

作者: 松鼠    时间: 2015-7-21 15:36
标题: 代码的问题
file:///C:\Users\YS\Documents\Tencent Files\951294484\Image\C2C\JSPXK)6Y@5UYC~7T929OC)A.png这里为什么能用ad7606定义指针,在哪里声明了吗?file:///C:\Users\YS\Documents\Tencent Files\951294484\Image\C2C\JSPXK)6Y@5UYC~7T929OC)A.pngfile:///C:\Users\YS\Documents\Tencent Files\951294484\Image\C2C\JSPXK)6Y@5UYC~7T929OC)A.pngfile:///C:\Users\YS\Documents\Tencent Files\951294484\Image\C2C\JSPXK)6Y@5UYC~7T929OC)A.pngfile:///C:\Users\YS\Documents\Tencent Files\951294484\Image\C2C\JSPXK)6Y@5UYC~7T929OC)A.png[attach]365[/attach]6 O4 M& x' p0 c' J
还有就是34行怎么能用这个东西定义?定义的空间多大?35行初始化原函数在哪里?[attach]366[/attach]7 z( [  h0 b8 A" r! c  F! F& L

作者: tenny    时间: 2015-7-21 15:48
1、引入的其他头文件里面引入了对 ad7606 类型的定义% f9 V. B+ k, m! H+ E+ R
2、不太明白你这第二个问题# y) p4 [2 F9 U9 X$ ~
syslink 安装目录下有 API 文档: syslink_2_21_01_05/docs/html/index.html
作者: 松鼠    时间: 2015-7-21 15:54
tenny 发表于 2015-7-21 15:48& r6 w  j1 X% M! G6 C: q( l
1、引入的其他头文件里面引入了对 ad7606 类型的定义( x1 I9 R9 q; I; g! s; \
2、不太明白你这第二个问题) f' j4 s9 z9 m# i5 ~2 E
syslink 安装目录下有 AP ...
7 V) I# F6 P) L5 ?- J% p
比如这个ad7606 *ad;可是在ad7606.c里只有这个struct _ad7606 {  }。_ad7606与ad7606一样吗?第二个问题比如:ad7606例程里的message_loop.c中的第31行sizeof(MessageLoop)的大小。
作者: tenny    时间: 2015-7-22 10:32
松鼠 发表于 2015-7-21 15:547 K0 q4 p3 w5 \) Q
比如这个ad7606 *ad;可是在ad7606.c里只有这个struct _ad7606 {  }。_ad7606与ad7606一样吗?第二个问题 ...
4 p5 `1 j* S3 c. a: _# u
  对于1: typedef struct _ad7606 ad7606;9 N0 D3 T% J+ r
  对于2: memset(loop, 0, sizeof(MessageLoop));8 N7 A: o, X( G7 b+ \. P
  ! E! B' g( C0 ^3 ?. f" Z: |
  你应该去了解下 typedef 的使用
5 r" v3 _: p! }1 }
作者: tenny    时间: 2015-7-22 10:32
松鼠 发表于 2015-7-21 15:549 l' f" E5 F8 l! n' }2 {
比如这个ad7606 *ad;可是在ad7606.c里只有这个struct _ad7606 {  }。_ad7606与ad7606一样吗?第二个问题 ...

* J3 A  P( A! D/ Y; j  对于1: typedef struct _ad7606 ad7606;1 i: ?+ Z" n# N- f( N6 k) x. J0 b
  对于2: memset(loop, 0, sizeof(MessageLoop));
; F5 D) D; c( C& N1 a& v+ K9 h    q9 K. @0 n: S$ T9 {, r
  你应该去了解下 typedef 的使用
3 v8 `. K% i. X: t, d4 f8 X# n
作者: tenny    时间: 2015-7-22 10:32
松鼠 发表于 2015-7-21 15:54
% N* {) W5 v. U9 ?+ `比如这个ad7606 *ad;可是在ad7606.c里只有这个struct _ad7606 {  }。_ad7606与ad7606一样吗?第二个问题 ...
9 {3 ^' c, L. t7 c1 }
  对于1: typedef struct _ad7606 ad7606;
2 t' e/ x  \8 _. X; }  对于2: memset(loop, 0, sizeof(MessageLoop));
+ v- c2 X4 r) `: y2 t, q  3 \" k2 n. W6 [5 T
  你应该去了解下 typedef 的使用
* p8 q3 G+ A+ ~& P$ e+ Z; w$ v3 n1 R
作者: 松鼠    时间: 2015-7-22 20:31
本帖最后由 松鼠 于 2015-7-22 20:32 编辑
1 X  Y) \, @* k6 Y5 s' z
tenny 发表于 2015-7-22 10:32; Q0 V; U2 Y  w& a  i* @+ `
对于1: typedef struct _ad7606 ad7606;* v% w4 w  F5 K6 B4 g5 n- @
  对于2: memset(loop, 0, sizeof(MessageLoop));
1 M/ A7 {& Z6 @& o# j( l/ r3 E$ b  

+ e: [9 V: G" \0 ^8 J首先,你们的代码里没有用typedef,而且在struct _ad7606{}后面没有ad7606。第二,代码里是memset(loop,sizeof(MessageLoop),0);是不是我的代码是错误的?, k: j5 J; u7 h
C:\Users\YS\Desktop\J0JR5ERD3{8AFQM4H}`O)0K[attach]367[/attach]
作者: tenny    时间: 2015-7-23 09:21
对于1, 查看 ad7606.h
: H+ p8 w. o; J0 J对于2, 是之前的代码参数传递有问题,实参2和3反了




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4