jenya7 0 10 мая, 2018 Опубликовано 10 мая, 2018 (изменено) · Жалоба у меня есть в функции обнуление буфера uint16_t l_uiDataBuffer[32]; //do some stuff memset(l_uiDataBuffer,0,sizeof(l_uiDataBuffer)); buffcpy(l_uiDataBuffer,l_uiTempDataP, l_uiDataSize); если я заменю на uint16_t l_uiDataBuffer[32] = { 0 }; buffcpy(l_uiDataBuffer,l_uiTempDataP, l_uiDataSize); я получу какое то преимущество? может uint16_t l_uiDataBuffer[32] = { 0 }; делается во время компиляции? хотя нет, локальная переменная. но может это быстрее чем звать memset? Изменено 10 мая, 2018 пользователем Jenya7 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 178 10 мая, 2018 Опубликовано 10 мая, 2018 · Жалоба uint16_t l_uiDataBuffer[32] = { 0 }; не обнулит Ваш буфер. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 10 мая, 2018 Опубликовано 10 мая, 2018 · Жалоба uint16_t l_uiDataBuffer[32] = { 0 }; не обнулит Ваш буфер. Еще как обнулит. хотя нет, локальная переменная. но может это быстрее чем звать memset? Не должно быть быстрее, то же самое. Другое дело, что memset заметить проще. И таки да, смысл { 0 } не все понимают :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 178 10 мая, 2018 Опубликовано 10 мая, 2018 · Жалоба Пардон, да, обнулит. ТС, Вот еще почитайте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jenya7 0 10 мая, 2018 Опубликовано 10 мая, 2018 · Жалоба понял. спасибо. нужно листинг смотреть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться