KEIL中结构体问题

[复制链接]
6182|12
 楼主| Jeaniowang 发表于 2012-11-20 16:35 | 显示全部楼层 |阅读模式
#include <reg52.h>

typedef struct
{
int len;
char  DATA[300];
} SM_BUFF;

void main()
{
   xdata SM_BUFF * ab;
  ab->len=80;
  &(ab->DATA)="AGAGJ;DF";
}

编译出错MIAN.C(15): error C213: left side of asn-op not an lvalue
不知结构体该怎样使用 求指导
阿南 发表于 2012-11-20 16:59 | 显示全部楼层
楼主找个例子看看吧,uCOSII里有很多结构体的,可以参考。
ayb_ice 发表于 2012-11-20 17:26 | 显示全部楼层
&(ab->DATA)="AGAGJ;DF";
有问题
znmcu 发表于 2012-11-20 18:03 | 显示全部楼层
你只定义一个指针有啥用呢?
airwill 发表于 2012-11-20 18:04 | 显示全部楼层
ab->DATA[0] = 'A';
dqyubsh 发表于 2012-11-20 19:12 | 显示全部楼层
字符串可以用strcpy拷贝,这不是重点。关键是指针变量没有初始化,典型的野指针。
 楼主| Jeaniowang 发表于 2012-11-21 20:17 | 显示全部楼层
现在解决了 是那个结构体类型里面那个DATA数组要改成指针才能那样赋值
hgjinwei 发表于 2012-11-22 08:20 | 显示全部楼层
:L初学者都以为程序编译通得过就OK了。
sunhq02 发表于 2012-11-22 08:27 | 显示全部楼层
你那结构体指针根本没有分配,就是调通了也是个野指针
迟早出问题
 楼主| Jeaniowang 发表于 2012-11-23 19:46 | 显示全部楼层
在定义结构体变量时候就分配了吧
 楼主| Jeaniowang 发表于 2012-11-23 19:46 | 显示全部楼层
难道不能这样用啊  还是要定义成数组?
原野之狼 发表于 2012-11-23 20:50 | 显示全部楼层
报错信息提示说:不是一个左值,所以不能做赋值操作。
另外一个问题是没有分配指针所指内存空间。
qqlvjh 发表于 2012-11-27 14:05 | 显示全部楼层
回去看书。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

18

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部