![]() |
|
||||||||||
|
|||||
|
Регистрация: May 2011
Сообщений: 26
|
Помогите пожалуйста. Никак не могу понять в чём проблема. Есть простой код:
Дебаггер останавливается в середине функции, хотя судя по переменным (m.bytesAvailable = 0) , код выполнятся не должен. Впервые с таким сталкиваюсь. Почему не реагирует на m.bytesAvailable != 0 ? |
|
|||||
|
Не совсем понятно, где именно останавливается дебаггер. Попробуйте воспользоваться автоматическим приведением типов:
if (m && m.bytesAvailable) { // null и 0 приводятся к false, остальное к true // Здесь вы предполагаете, что m.bytesAvailable больше либо равно восьми. // Возможно стоит вынести это в условие. // if (m && (m.bytesAvailable >= 8)) { ... } microphone = Microphone.getMicrophone(m.readInt()); mic.selectedIndex = m.readInt(); } |
|
|||||
|
Banned
[+1 05.11.11]
[+1 09.08.11] Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Цитата:
Если количество байт действительно равно 0, то этот блок не будет выполняться. В этом я уверен на 200%. По такому количеству представленной информации, можно предложить такую проверку: |
|
|||||
|
блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
|
Возможно m.bytesAvailable стало 0 после первого m.readInt(). Их же там у вас два.
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают. |
|
|||||
|
Banned
[+1 05.11.11]
[+1 09.08.11] Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
|
Действительно.
Почему бы тогда не проверить так? |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:45. |
|
|
« Предыдущая тема | Следующая тема » |
|
|