久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7239|回復: 5
收起左側

關于keil5中 結構體指針作為函數參數的問題

[復制鏈接]
ID:255045 發表于 2018-10-16 16:34 | 顯示全部樓層 |閱讀模式
50黑幣

.H文件中定義結構體如下
typedef struct {
      float Distance;                                      /*!< 用厘米測量傳感器的距離*/
      GPIO_TypeDef* ECHO_GPIOx;             /*!< 指向用于 ECHO port /
      uint16_t ECHO_GPIO_Pin;                    /
!< ECHO Pin /
     GPIO_TypeDef
TRIGGER_GPIOx;        /*!< 指向用于 TRIGGER port /
     uint16_t TRIGGER_GPIO_Pin;               /
!< TRIG Pin */
} TM_HCSR04_t;

函數申明如下:
        uint8_t  HCSR04_Init(  TM_HCSR04_t *HCSR04  ,  GPIO_TypeDef ECHO_GPIOx,               uint16_t ECHO_GPIO_Pin, GPIO_TypeDef* TRIGGER_GPIOx, uint16_t TRIGGER_GPIO_Pin);

        float  HCSR04_Read(TM_HCSR04_t *HCSR04);

主函數如下:
int main(void)
{
       float  result=0;
      TM_HCSR04_t  *HCSR04_1; //定義結構體指針
      HCSR04_Init(HCSR04_1,echo_gpio,echo_pin,trig_gpio,trig_pin);//初始化賦值
     for(;;)
    {
            result=HCSR04_Read( HCSR04_1 ); //讀值
           printf( "length is %f",result );
     }
}

編譯無錯誤,就是TM_HCSR04_Init函數中結構體指針作為函數參數無法賦值,如有知曉者,還望不吝賜教,萬分感謝



最佳答案

查看完整內容

float result=0; TM_HCSR04_t HCSR04_1; //定義結構體指針 HCSR04_Init(&HCSR04_1,echo_gpio,echo_pin,trig_gpio,trig_pin);//初始化賦值 for(;;) { result=HCSR04_Read( &HCSR04_1 ); //讀值 printf( "length is %f",result ); } } 試一下,HCSR04_Init()這個函數內部不能申請空間的話, 傳進去的指針沒有指向具體的空間
回復

使用道具 舉報

ID:406412 發表于 2018-10-16 16:34 | 顯示全部樓層
float  result=0;
      TM_HCSR04_t  HCSR04_1; //定義結構體指針
      HCSR04_Init(&HCSR04_1,echo_gpio,echo_pin,trig_gpio,trig_pin);//初始化賦值
     for(;;)
    {
            result=HCSR04_Read( &HCSR04_1 ); //讀值
           printf( "length is %f",result );
     }
}
試一下,HCSR04_Init()這個函數內部不能申請空間的話, 傳進去的指針沒有指向具體的空間
回復

使用道具 舉報

ID:410667 發表于 2018-10-16 17:46 | 顯示全部樓層
這個肯定賦不了值啊,你具體的 HCSR04_Init賦值函數都沒有,只是聲明了一個空函數在那
回復

使用道具 舉報

ID:255045 發表于 2018-10-16 21:44 | 顯示全部樓層
ashang1988 發表于 2018-10-16 17:22
float  result=0;
      TM_HCSR04_t  HCSR04_1; //定義結構體指針
      HCSR04_Init(&HCSR04_1,echo_g ...

試了一下,會報錯
回復

使用道具 舉報

ID:255045 發表于 2018-10-16 21:48 | 顯示全部樓層
woai66666660 發表于 2018-10-16 17:46
這個肯定賦不了值啊,你具體的 HCSR04_Init賦值函數都沒有,只是聲明了一個空函數在那

HCSR04_Init的賦值函數,我以為主函數里 HCSR04_Init(HCSR04_1,echo_gpio,echo_pin,trig_gpio,trig_pin);就已經完成了賦值了,還是有些不明白,想再請教一下
回復

使用道具 舉報

ID:255045 發表于 2018-10-21 15:23 | 顯示全部樓層
之前頭文件寫法寫錯了,你的答案時正確的,十分感謝
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美在线一区视频 | 免费视频久久久久 | 亚洲第一网站 | 国产成人99久久亚洲综合精品 | 欧美日韩高清在线一区 | 本道综合精品 | 亚洲免费在线视频 | 日韩欧美国产电影 | 国产美女视频黄a视频免费 国产精品福利视频 | 国产乱码久久久久久一区二区 | 在线观看国产视频 | 日本视频免费观看 | 视频二区 | 免费观看一级特黄欧美大片 | www.久久久久久久久 | 久视频在线 | 国产欧美日韩一区二区三区 | 91精品国产91久久久久久吃药 | 国产精品免费在线 | 粉嫩av久久一区二区三区 | 怡红院怡春院一级毛片 | 国产福利91精品一区二区三区 | 国产精品久久久久久妇女6080 | 在线免费观看黄色网址 | 国产97色 | 中文区中文字幕免费看 | 久久久日韩精品一区二区三区 | av网站免费看| 黄色av免费网站 | 伊人久久免费视频 | 精品亚洲永久免费精品 | 日韩欧美高清 | 亚洲一区二区三区观看 | 91精品观看| 国产日韩欧美 | 久久免费高清视频 | 日韩欧美三区 | 久久久久久国产精品免费免费狐狸 | 韩国电影久久 | 国产精品久久久久久久久久久免费看 | 亚洲精品中文字幕在线 |