Застрял на вроде простом моменте. Скетч под Ардуиновскую платформу, компилирую в Платформио. Сам скетч очень большой, постараюсь описать вкратце.
Есть структура объявленная глобально (хранит данные в RTC памяти микросхемы):
#define ARRAY_SIZE 20
struct {
.........
uint32_t TimeStampData[ARRAY_SIZE]; // 80 byte
uint16_t HumData[ARRAY_SIZE]; // 40 byte
uint16_t TempData[ARRAY_SIZE]; // 40 byte
uint16_t PresData[ARRAY_SIZE]; // 40 byte
.................
} MyRtcData;
есть функция CalculateTrend(?????????) // предназначена для выполнения одинаковых вычислений с одинаковыми массивами из структуры MyRtcData
{
int difference[11]={0,};
difference[0]=(MyRtcData.??????[0] - MyRtcData.&????[1])*1.5;
difference[1]=(MyRtcData.?????[0] - MyRtcData.&????[2]);
................
}
есть функция unsigned int PrecipitationLikelihood(void) // из которой я передаю вышеуказанной функции указатель на массив из структуры, который нужно обработать.
{
....
int trend = CalculateTrend(MyRtcData.PresData);
}
Вопрос - я могу передавать указатель сразу на элемент структуры(если она описана глобально)? или мне нужно сначала передать указатель на структуру, а потом указатель на элемент структуры? Как мне обратиться внутри функции к элементам массива?
Конечно тут можно рассматривать только передачу через указатели, не целиком данные, т.к. стек маленький...