реклама на сайте
подробности

 
 
> Как определить размер массива?, с использованием sizeof
011119xx
сообщение Jun 21 2012, 06:47
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 381
Регистрация: 5-07-05
Из: Уфа
Пользователь №: 6 544



Массивы объявлены следующим образом:
Код
const int16_t TEK0018[2500] = {88, ..., 85};
const int16_t TEK0019[2500] = {87, ..., 90};
...
const int16_t TEK0029[2500] = {89, ..., 84};

const int16_t *TEK00xx[] = {TEK0018, TEK0019, TEK0020, TEK0021, TEK0022, TEK0023, TEK0024, TEK0025, TEK0026, TEK0027, TEK0028, TEK0029};

Далее по ходу программы нужно определить размер массива на который указывает TEK00xx[index]. Как это сделать с использованием sizeof? sizeof(TEK0018) дает результат 5000, что верно. Мне же нужно, что-то типа sizeof(TEK00xx[index]).
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aaarrr
сообщение Jun 21 2012, 06:51
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(011119xx @ Jun 21 2012, 10:47) *
sizeof(TEK0018) дает результат 5000, что верно.

sizeof(TEK0018) / sizeof(TEK0018[0]) даст верный результат.

Цитата(011119xx @ Jun 21 2012, 10:47) *
Мне же нужно, что-то типа sizeof(TEK00xx[index]).

А вот так не получится.
Go to the top of the page
 
+Quote Post
011119xx
сообщение Jun 21 2012, 07:13
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 381
Регистрация: 5-07-05
Из: Уфа
Пользователь №: 6 544



Цитата(aaarrr @ Jun 21 2012, 11:51) *
А вот так не получится.

Как обоснуете?
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jun 25 2012, 01:01
Сообщение #4


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (011119xx @ Jun 21 2012, 15:13) *
Как обоснуете?

sizeof - на сколько я знаю, макрос, который обрабатывается препроцессором.


--------------------
Выбор.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th July 2025 - 00:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016