ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
22 ноября
279089 Топик полностью
fk0, легенда (19.10.2011 18:26 - 21.10.2011 12:55, просмотров: 190) ответил BaN на Проблема с видимостью буфера внутри цикла в функции.
Показываю: #define TXBUF_SIZE 50 void SendNewData(void) { uint8_t *tx_buf; uint_fast8_t i = 0; unsigned checksum, n; tx_buf=malloc(TXBUF_SIZE); if (tx_buf==NULL) abort(); /* Формируем пакет для отправки */ tx_buf[i++] = ID_TX_Sens_Data; /* ... */ checksum = crc16(tx_buf, i); tx_buf[i++] = checksum >> 8; tx_buf[i++] = checksum & 0xff; /* Отправляем сформированный пакет */ n=i, i=0; while (n) int r; r=write(uart_fd, &tx_buf[i], n); if (r<0) abort(); n-=r, i+=r; } free(tx_buf); }
[ZX]