嵌入式开发者社区

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

作者: 松鼠    时间: 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 c- Z5 x3 Q4 {9 w1 z* j9 a2 z2 c
还有就是34行怎么能用这个东西定义?定义的空间多大?35行初始化原函数在哪里?[attach]366[/attach]
6 Z0 |8 w5 M; K6 |" U: U
作者: tenny    时间: 2015-7-21 15:48
1、引入的其他头文件里面引入了对 ad7606 类型的定义
' v) J: c1 h6 P. {5 }" t2、不太明白你这第二个问题- I. T4 p  C) U, i
syslink 安装目录下有 API 文档: syslink_2_21_01_05/docs/html/index.html
作者: 松鼠    时间: 2015-7-21 15:54
tenny 发表于 2015-7-21 15:48
3 ^+ ~8 R: p- l3 [  j) f& n% H1、引入的其他头文件里面引入了对 ad7606 类型的定义
1 N* x, K0 L( y# P# M" ~' P# e2、不太明白你这第二个问题
* S9 F" k0 A) P syslink 安装目录下有 AP ...
0 }- u  B7 j; V: {
比如这个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:54! p1 K, ~$ F* L; b5 J6 U
比如这个ad7606 *ad;可是在ad7606.c里只有这个struct _ad7606 {  }。_ad7606与ad7606一样吗?第二个问题 ...

6 c1 a7 S) p. ^/ f: k1 ]  s  对于1: typedef struct _ad7606 ad7606;8 U" A6 B' ~9 H
  对于2: memset(loop, 0, sizeof(MessageLoop));
4 r5 b" v/ m) Q! u% U  ; c2 ?; }' w" W6 J' x. s
  你应该去了解下 typedef 的使用* A3 w( l/ h+ h2 T# h

作者: tenny    时间: 2015-7-22 10:32
松鼠 发表于 2015-7-21 15:548 v  t% J9 h+ V$ X& m
比如这个ad7606 *ad;可是在ad7606.c里只有这个struct _ad7606 {  }。_ad7606与ad7606一样吗?第二个问题 ...

: G" }1 q' q& U: N( M4 l4 a  对于1: typedef struct _ad7606 ad7606;
, F+ n$ p6 T" I- `, }' K  对于2: memset(loop, 0, sizeof(MessageLoop));
1 W& \# n8 p, t' v6 H4 s8 K  
, w" l0 X& b1 c+ e, v+ W" ^  你应该去了解下 typedef 的使用! T& S2 R* [" p

作者: tenny    时间: 2015-7-22 10:32
松鼠 发表于 2015-7-21 15:54
& q  p4 z1 o4 a) g% t- [/ }) f比如这个ad7606 *ad;可是在ad7606.c里只有这个struct _ad7606 {  }。_ad7606与ad7606一样吗?第二个问题 ...
& a% ~  u" E+ Z+ M8 k# r
  对于1: typedef struct _ad7606 ad7606;
& ^/ }1 }, I# t6 V1 _! _3 ]6 q  对于2: memset(loop, 0, sizeof(MessageLoop));5 c( d+ R8 A" {( \4 X. t3 X
  ! f$ _3 m( a/ d) t
  你应该去了解下 typedef 的使用5 `5 q  W! R2 B! D$ b

作者: 松鼠    时间: 2015-7-22 20:31
本帖最后由 松鼠 于 2015-7-22 20:32 编辑 ) b3 ?. b2 ^1 A
tenny 发表于 2015-7-22 10:32! a4 i. r7 `8 Z) d/ \" n  B+ I
对于1: typedef struct _ad7606 ad7606;  j# u) ^. I  Z" z' D+ X
  对于2: memset(loop, 0, sizeof(MessageLoop));
5 j- C3 k% u8 }% v: X0 \# j# h( I' b  

. W8 G* V  f/ \8 _2 j7 O1 U, ~7 J首先,你们的代码里没有用typedef,而且在struct _ad7606{}后面没有ad7606。第二,代码里是memset(loop,sizeof(MessageLoop),0);是不是我的代码是错误的?6 _$ x; F( r3 J! e
C:\Users\YS\Desktop\J0JR5ERD3{8AFQM4H}`O)0K[attach]367[/attach]
作者: tenny    时间: 2015-7-23 09:21
对于1, 查看 ad7606.h
/ G! F/ `1 q/ O1 T  i; a对于2, 是之前的代码参数传递有问题,实参2和3反了




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