Одно имя переменной с множественной атрибуцией - PullRequest
0 голосов
/ 09 апреля 2020

Hy! Я хочу написать функцию, которая читает конкретные значения датчика c с устройства mondbus. Для считывания значения датчика мне нужен адрес устройства и номер регистра. Мне нужно решение для хранения этих двух атрибутов под одним именем. Пример:

TEMPSENSOR_1 = deviceAddress = 0x09, registerNum = 0 sensorRead(TEMPSENSOR_1){ get the two attribution by name modbusRequest(deviceAddress, registerNum ....); }

Когда я выполняю запрос modbusRequest, необходимо указать deviceAddress и registerNum от имени TEMPSENSOR_1.

Как я могу это сделать?

1 Ответ

0 голосов
/ 09 апреля 2020

Если ваш код написан на C ++ (, а не C):

Я думаю, вам нужно использовать std::pair из заголовка <utility> для этого.

https://en.cppreference.com/w/cpp/utility/pair

Это позволяет хранить два значения в одном объекте. Но, пожалуйста, убедитесь, что эти два значения тесно связаны друг с другом. Если это не так, не используйте это и выполните рефакторинг вашего кода.


Если ваш код написан на C:

Я думаю, вы хотите использовать struct, который сохранить два значения.

https://www.tutorialspoint.com/cprogramming/c_structures.htm

Это позволяет хранить два значения в одном объекте. Но, пожалуйста, убедитесь, что эти два значения тесно связаны друг с другом. Если это не так, не используйте это и выполните рефакторинг своего кода.

Вам нужна дополнительная информация?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...