реклама на сайте
подробности

 
 
> Проверка входных аргументов, стоит ли проверять входные аргументы?
tazik
сообщение Jul 18 2010, 11:37
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 13-05-07
Из: Норильск
Пользователь №: 27 691



К примеру есть функция перекодировки и вывода символа:
Код
void PutSymbToDisp(uint8_t LedSymb, uint8_t LedDigit){
    LED_BUFFER[LedDigit]=pgm_read_byte(pDispDecodeArray+LedSymb);
};


входные параметры:
LedSymb - код символа
LedDigit - номер знакоместа на индикаторе.

Стоит ли в функцию встраивать проверку передаваемых аргументов? Например, могу забыть, с нуля считаются знакоместа или с единицы и соответственно, потом мучаться с отладкой.
Что в данном случае будет является правильным подходом? Добавление проверки и увеличение кода, либо добавление исчерпывающих комментариев?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 6)
sergeeff
сообщение Jul 18 2010, 12:24
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Сделайте отладочную и окончательные версии с помощью макро и наслаждайтесь. По типу

Код
#if DEBUG_MODULE_XX

if (.....)
    dbg_printf("...")

#endif

И при компиляции включайте/отключайте режим отладки
Go to the top of the page
 
+Quote Post
tazik
сообщение Jul 18 2010, 12:43
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 13-05-07
Из: Норильск
Пользователь №: 27 691



Спасибо, как вариант
Go to the top of the page
 
+Quote Post
Deka
сообщение Jul 18 2010, 12:58
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 248
Регистрация: 18-07-06
Из: Сочи
Пользователь №: 18 890



Если память и скорость работы функции сильно не жмёт - добавляйте проверку. Хотя режим отладки более правильный вариант.
Go to the top of the page
 
+Quote Post
WHALE
сообщение Jul 18 2010, 14:17
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



Недавно прочел "Питер Гудлиф Ремесло программиста(практика написания хорошего кода)".
Очень понравилось.Ваш случай тоже рассматривается.Если хотите,могу сбросить вам на почту.


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post
tazik
сообщение Jul 18 2010, 15:33
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 13-05-07
Из: Норильск
Пользователь №: 27 691



Цитата(WHALE @ Jul 18 2010, 22:17) *
Недавно прочел "Питер Гудлиф Ремесло программиста(практика написания хорошего кода)".
Очень понравилось.Ваш случай тоже рассматривается.Если хотите,могу сбросить вам на почту.


Сходу нагуглить не удалось, только магазины. Скиньте, пожалуйста на dkar@inbox.ru. Заранее благодарен!
Go to the top of the page
 
+Quote Post
WHALE
сообщение Jul 18 2010, 15:50
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 902
Регистрация: 2-01-06
Из: Краснодар
Пользователь №: 12 768



Отправил


--------------------
"Hello, word!" - 17 errors 56 warnings
Go to the top of the page
 
+Quote Post

Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 07:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.0139 секунд с 7
ELECTRONIX ©2004-2016