标题: 51单片机C语言程序 “ -> ”是什么符号呢? [打印本页]

作者: smarttran    时间: 2019-7-2 12:07
标题: 51单片机C语言程序 “ -> ”是什么符号呢?
日前在做一个3轴的传感器,使用的是ST公司的LIS3DH芯片,在官方驱动里面有一段程序有点看不懂,请大家帮忙回答下,谢谢!
请问下函数里面 :“ buff->AXIS_X = value;”     这个符号 “ -> ”是什么符号呢?有什么功能呢?

status_t LIS3DH_GetAccAxesRaw(AxesRaw_t* buff)
{
    i16_t value;
  u8_t *valueL = (u8_t *)(&value);
  u8_t *valueH = ((u8_t *)(&value)+1);
  
  if( !LIS3DH_ReadReg(LIS3DH_OUT_X_L, valueL) )
    return MEMS_ERROR;
  
  if( !LIS3DH_ReadReg(LIS3DH_OUT_X_H, valueH) )
    return MEMS_ERROR;
  
  buff->AXIS_X = value;
  
  if( !LIS3DH_ReadReg(LIS3DH_OUT_Y_L, valueL) )
    return MEMS_ERROR;
  
  if( !LIS3DH_ReadReg(LIS3DH_OUT_Y_H, valueH) )
    return MEMS_ERROR;
  
  buff->AXIS_Y = value;
  
  if( !LIS3DH_ReadReg(LIS3DH_OUT_Z_L, valueL) )
    return MEMS_ERROR;
  
  if( !LIS3DH_ReadReg(LIS3DH_OUT_Z_H, valueH) )
    return MEMS_ERROR;
  
  buff->AXIS_Z = value;
  
  return MEMS_SUCCESS;
}




作者: smarttran    时间: 2019-7-2 14:59
在基础教程上找到了答案:->为:存取结构,是属于结构类别里面的一种。,学是要多泡论坛呀
作者: jindizhiwa    时间: 2019-7-2 15:24
buff是个结构体,->符号是指向成员AXIS_X ,= value是赋值
作者: swk51    时间: 2019-7-2 15:59
->是一个指针,它是用于指向结构体、用来取子数据。
作者: 小鬼哇咔    时间: 2019-7-2 16:23
建议先学习一下C语言基础——指针的用法
作者: newbeacon    时间: 2019-7-3 00:04
结构体指针,访问成员,用->符号
作者: cjm82    时间: 2019-7-4 13:32
这个函数,传递的参数是结构体的指针.一句话来概括的话,以结构体指针形式访问其成员变量就得用  "->",如果是结构体的变量名,就用句号.一般结构体作为传递参数,多数都是用指针来传递.
作者: CTW.    时间: 2019-7-4 14:15
->是取指针类型的结构体里的成员,  .是取普通类型的结构体里的成员




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1