Я работаю над встроенной системой, которая имеет различные возможности вывода (цифровой выход, последовательный, аналоговый и т. Д.). Я пытаюсь найти чистый способ передать многие переменные, которые будут управлять этими функциями.
Мне не нужно передавать ВСЕ из них слишком часто, но я надеялся получить функцию, которая будет считывать входные данные (в данном случае из сети TCP), а затем анализировать данные (IE, 3-й Байт содержит состояния 8 цифровых выходов (в соответствии с тем, какой бит в этом байте является старшим или младшим) и помещает его в переменную, которую я затем могу использовать в другом месте программы.
Я хотел, чтобы эта функция была отделена от функции main (), но для этого потребовалось бы передать указатели примерно на 20 или около того переменных, в которые она будет записывать. Я знаю, что могу сделать переменные глобальными, но я пытаюсь упростить отладку, сделав это очевидным, когда функции разрешено редактировать эту переменную, передав ее функции.
Моей лучшей идеей была структура, и просто передать указатель на нее, но я не был уверен, существует ли более эффективный способ, тем более, что существует только одна функция, которая должна получить доступ ко всем из них одновременно, в то время как большинству других требуются только части информации, которая будет храниться в этой группе переменных состояния.
Так или иначе, есть ли чистый способ посылки сразу нескольких переменных между функциями, которые необходимо отредактировать?