2013-09-24 2 views
0

У меня есть структурасинтаксического анализа структуры и переходя в качестве указателя аргумента

struct PTC_ConfigurationH20 
    { 
     float period ; 
     PTC_ConfigurationH20Probe probe[2] ; 
     uint32_t padding ; 

     }PTC_PACK; 



struct PTC_ConfigurationH20Probe 
    { 
     uint32_t probeSerialNumber; 
     uint8_t probeType; 
     uint8_t range; 
     uint8_t mode; 
     uint8_t padding1; 
     PTC_H20PIDParameters pid; 
     uint32_t padding; 
    }; 

Я прочитал выше структуры PTC_ConfigurationH20 данные как

H20::PTC_ConfigurationH20* tempConfiguration 
        = reinterpret_cast<H20::PTC_ConfigurationH20*>(message->GetData()); 

мне нужно передать указатель на объект PID для зонда [ 0], функции

bool SetPIDConfiguration(uint8_t probenumber, const H20::PTC_H20PIDParameters& calib, 
          PTC_Return* ret); 

Пожалуйста, помогите

+0

'SetPIDConfiguration (..., tempConfiguration-> probe [0] .pid, ...)'? –

+0

его просто указатель & ret, который значительно не имеет значения здесь. – user2746930

+0

Вы пробовали 'SetPIDConfiguration (0, tempConfiguration-> probe [0] .pid, NULL)' then? Что вы пробовали? –

ответ

2

I need to pass the pointer for object pid for probe[0], to the function

Дано:

H20::PTC_ConfigurationH20* tempConfig; 

и учитывая, что SetPIDConfiguration принимает в качестве 2-й аргумент константная ссылка на H20 :: PTC_H20PIDParameters (при условии, H20 некоторое пространство имен Классификатор), можно было бы быть в состоянии сделать следующее:

SetPIDConfiguration(notRelevant, tempConfig->probe[0].pid, notRelevant); 
+0

Синтаксис функции - SetPIDConfiguration (uint8_t probenumber, const H20 :: PTC_H20PIDParameters & calib, PTC_Return * ret); – user2746930

+0

Да. Я специально указал, что второй аргумент является ссылкой, а не указателем. Подпись функции не отражает название вашего сообщения. (notRelevant) не имеет отношения к вашему вопросу. tempConfig является указателем и разыменован оператором ->. probe [0] возвращает ссылку на нулевой элемент массива (массив из 2 элементов в PTC_ConfigurationH20Probe), поэтому тип PTC_ConfigurationH20Probe &. tempConfig-> probe [0] .pid предоставляет вам требуемый тип. –

+0

Ошибка: Неопределенная ссылка на SetPIdConfiguration (****); – user2746930

Смежные вопросы