请教:结构体内定义一个数组可以直接赋初值吗?

2020-01-30 14:02发布

最近没活干,学习一下单片机。 请教一下,在结构体内定义的数组可以直接赋初值吗?如果不行怎么初始化这个数组的值呢?
struct Ti
  {
   unsigned long Ti_All;
   unsigned long Ti_Ok;
   unsigned char Ti_Temp[10]={0,1,2,3,4,5,6,7,8,9};//这里编译不过去有错误!
   unsigned char CRC_T0;
   unsigned char CRC_T1;
   //struct RI *RI_PX;
  }TiData;//发送数据存储区
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
yklstudent
1楼-- · 2020-02-01 00:42
struct Ti
  {
   unsigned long Ti_All;
   unsigned long Ti_Ok;
   unsigned char Ti_Temp[10];//这里编译不过去有错误!
   unsigned char CRC_T0;
   unsigned char CRC_T1;
   //struct RI *RI_PX;
  }TiData = {0,0,{0,1,2,3,4,5,6,7,8,9},0,0};//发送数据存储区
都和三楼的兄弟讨论了半天 楼主竟然还不知道怎么赋值
只能写个keil C51下的
elecompu
2楼-- · 2020-02-01 02:04
呵呵,我真的是力工出身,路边捡到本:《单片机C语言轻松入门》看了些日子,没系统学习过C语言,真看不懂你们讨论的C99标准是什么。你要是直白点告诉我:不能部分赋初值,要一次性赋全部,我就明白了。非常谢谢你!(你认识你头像中的女人吗?太邪恶了!)结构体和int,char是同级别的数据类型,就像你没法硬操作char,int中的几位。我就这样理解算了!

一周热门 更多>