首页 | 资讯 | 移动 | 云计算 | 空间 | 论坛 | 博客 | 下载 | 网摘 | 程序员 | 书店 |
充电
欢迎您: singaporeraining | 退出 | 帮助 这里也许就有你要的
...
Innovate2011:软件开发靠工具,而不是规矩(图)
世界IPv6日将测试互联网IPv4转换后兼容性
分析称Groupon虚报营收数据 应放弃上市
Facebook占互联网共享流量38%居主导
[WWDC]苹果正式发布Mac OS X Lion、iOS 5和iClo...
【软件创富】营销之道,免费好礼
和华为智汇云一起走向世界
中关村“黑马程序员”训练营第二期正式开班
PayPal助力移动支付应用
Android应用换电视,前30名有效!
【教程】笔记本安装MeeGo
微软BI解决
开发简介
下载Windows Phone 中文培训包
下载 Windows Phone 开发工具
全新Windows Phone 开发中心
VS2010 SharePoint 入门
【免费下载】WebMatrix建站工具
AIX 专区有奖话题讨论
4.21日Adobe企业RIA开发者研讨会
MeeGo中文社区全新呈现
2011台北国际电脑展开幕(5.31-6.4)
关于QT编程入门的那些事
相见 ——“人生若只如初见”
游戏远程代码注入和动态连接库的使用
哥是传奇—组团参赛心得
【教程】Windows平台下MeeGo v1.2 SDK的安装
MeeGo 1.2 正式版发布
在生命走到尽头前用脚贡献了最后一个代码补丁
浅谈QT中窗口刷新事件
赢笔记本电脑,提升管理软件新水平!
【教程】安装MeeGO和Windows 7双系统的方法
分享我的个人初赛体会
【免费】参与移动应用投票赢手机话费
Nokia宣布Qt 5计划
立即加入IBM dW,万千技术尽网罗
Linux 上简单的MeeGo 开发 QT 程序
软件产品性能优化注意事项
用C#实现HTTP
下的多线程文件传输
【实战】搭建Meego Tablet开发测试平台
AppUp Center为更多程序员创造机会
【源码分享】一个多线程下载文件的程序
轻松漫画聊快速构建网站
如何创建一个简单的Qt应用程序
【赢取旧金山之旅】2011线程挑战赛
【图】爱上NOOK COLOR的5个理由
IPAD&NOOK COLOR屏幕对比多图
【教程】AppUp 进阶基础篇
Nokia CEO:下一步会与谁合作?
点评三星Smart TV智能电视
太震撼了!首次参加IDF有感
【教程】基于VC色温图效果实现
【教程】游戏技巧特效处理
Firefox 4在meego上成功安装
IDF2011:多图详解MeeGo 3月后正式发布 << >>
页码,1/3(W)w
2011-06-07http://topic.csdn.net/u/20110606/13/2e5ad62b-d07e-4432-8b0e-73ba4dabb4c7.html?...
CSDN - CSDN社区 - C/C++ - C语言
管理菜单 结 帖 发 帖 回 复
还是结构体, " -> " 和 " . " 区别 [问题点数:40分,结帖人:singaporeraining] 6显示得分回复
singaporeraining
(新加坡下雨了)
等 级:
结帖率:85.71%
发表于:2011-06-06 13:36:30 楼主
在以前的一段程序中,我是在h文件中声明了一个结构体数组,声明之后作了定义(程序段1),并且此h文件只被调用
了一次,在c文件中调用此数组的内部元素中,编译器提示我用"->",ok。
按照各位高手的说法h文件中不要定义变量,于是乎我想把定义部分放在c文件中,在h文件中只有声明(程序段2),这
时仍然是在C文件中调用此数组内部元素,编译器又提示我用".",ok
我想请问:
1. 按照书上说"->"是指针 "."是数据传递,但是我好像用的都不是指针格式,为什么两次提示我的用法不一样?请
参照程序段给予解答。
编译器:Microsoft Visual Studio C++
程序段1:
程序段2:
头文件中声明并定义结构体数组,此头文件只用一次
// 111.h文件
typedef struct
{
U8 InitAdd;
U16 InitDat;
}InitPHYRegDat[ 4 ];
InitPHYRegDat Dat[ 4 ] = {
{ 0x00, 0xBBAA }, { 0x01, 0xBBAA }, { 0x02, 0xBBAA }, { 0x03, 0xBBAA },
};
.c文件中,若要调用此结构体数组,必须用"->",才可以,用"."不行
// 123.c
SMISend( Config.EthernetPHYAdd, Dat[ j ] -> InitAdd, Dat[ j ] -> InitDat ); // 用"."ok,用"->"不行,
C/C++ code
//头文件中只声明结构体数组
// 111.h文件
typedef struct
{
U8 InitAdd;
U16 InitDat;
}InitPHYRegDat;
在.c源程序中定义结构体数组
// 123.c
InitPHYRegDat Dat[ 4 ] = {
{ 0x00, 0xBBAA }, { 0x01, 0xBBAA }, { 0x02, 0xBBAA }, { 0x03, 0xBBAA },
};
SMISend( Config.EthernetPHYAdd, Dat[ j ].InitAdd, Dat[ j ].InitDat ); // ok,用->不行,为何??
C/C++ code
【在职学】中科院IT工程硕士 不花钱就可以学PHP!? 2011 英特尔® 线程挑战赛,大奖等你拿!
回复次数:18 对我有用 [0] 丢个板砖 [0] 引用 举报 管理 TOP
回复于:2011-06-06 13:43:19 #3楼 得分:8
InitPHYRegDat Dat[ 4 ];定义了InitPHYRegDat的结构体数组。Dat[i]取出结构体成员,
Dat[ j ].InitAdd
页码,2/3(W)w
2011-06-07http://topic.csdn.net/u/20110606/13/2e5ad62b-d07e-4432-8b0e-73ba4dabb4c7.html?...
dizuo
(Ren.Yafee)
等 级:
3
或者 (&Dat[j]) ->InitAdd
对我有用 [0] 丢个板砖 [0] 引用 举报 管理 TOP精华推荐:一份C/C++实习生笔试试卷(基础部分),大家讨论一下答案吧!
公司简介 | 招贤纳士 | 广告服务 | 银行汇款帐号 | 联系方式 | 版权声明 | 法律顾问 | 问题
北京创新乐知信息技术有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
江苏乐知网络技术有限公司 提供商务支持
Email:webmaster@csdn.net
Copyright © 1999-2011, CSDN.NET, All Rights Reserved
页码,3/3(W)w
2011-06-07http://topic.csdn.net/u/20110606/13/2e5ad62b-d07e-4432-8b0e-73ba4dabb4c7.html?...