ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
27 ноября
1240254 Топик полностью
2kon (16.09.2022 22:53, просмотров: 336) ответил my504 на Вопрос по Си.
Ради интереса набросал ваш пример для "tcc" и получил вполне разумное предупреждение, но гораздо раньше: 
test.c:6: warning: assignment makes integer from pointer without a cast
test.c:6: warning: assignment makes integer from pointer without a cast
test.c:6: warning: assignment makes integer from pointer without a cast
test.c:6: warning: assignment makes integer from pointer without a cast
test.c:6: warning: assignment makes integer from pointer without a cast

#include <stdio.h> void main(void) { unsigned short v1 = 1, v2 = 2, v3 = 3, v4 = 4, v5 = 5; const unsigned long t[] = { &v1, &v2, &v3, &v4, &v5 }; #define LEN sizeof(t) / sizeof(t[0]) unsigned short a[LEN]; for(int i = 0; i < LEN; i++) { a[i] = *((unsigned short*)t[i]); printf("a[%d] = %u\n", i, a[i]); } }