Кажись понял (+)
Отправлено
Brut 17 октября 2009, г. 22:14
В ответ на:
Еемного не так (+) отправлено пользователем
Brut 17 октября 2009, г. 21:57
Надо не допустить выход указателя за предел массива.
тогда я передаю функции начало отсчёта, смещение и максимальную длину массива:
unsigned int serch(unsigned char *puchMsg, unsigned char start, unsigned char max_len)
{
while ( ((*puchMsg) != 0x22) && (puchMsg <= max_len) ) {puchMsg++;} // пока элемент строки не завен 0х22, бежим по строке.
return (puchMsg - start);
}
И запользовать так:
position = serch(&mass[lay][0], start_pos, MAS_LEN);
Так?
По идее, указатель не может быть неопределён в таких условиях. Массив конечен и в памяти есть, конец массива задан.