История изменений
Исправление user_id_68054, (текущая версия) :
си/си++ нет возможности узнать количество элементов массива по указателю
значение sizeof — вычисляется во время компилирования программы (а не во время выполнения программы).
узнать колличество элементов можно только если зарание его где-то запомнить.
а только лишь по указателю — узнать количество элементов нельзя [официально].
int count_names = sizeof(names) / sizeof(char);
этот частный случай работает только лишь потому что компилятор знает кое-что про names. но если бы этот names был бы внутри аргумента функции — то это бы не сработало бы.
вобщем не стоит на это надеется :) .. а стоит всегда полагать что нельзя узнать колличество элементов (только лишь по указателю).
Исправление user_id_68054, :
си/си++ нет возможности узнать количество элементов массива по указателю
значение sizeof — вычисляется во время компилирования программы (а не во время выполнения программы).
узнать колличество элементов можно только если зарание его где-то запомнить.
а только лишь по указателю — узнать количество элементов нельзя [официально].
int count_names = sizeof(names) / sizeof(char);
этот частный случай работает только лишь потому что компилятор знает кое-что про names. но если бы этот names был бы внутри аргумента функции — то это бы не сработало бы.
вобщем не стоит на это надеется :) .. а стоит всегда полагать что нельзя узнать колличество элементов.
Исходная версия user_id_68054, :
си/си++ нет возможности узнать количество элементов массива по указателю
значение sizeof — вычисляется во время компилирования программы (а не во время выполнения программы).
узнать колличество элементов можно только если зарание его где-то запомнить.
а только лишь по указателю — узнать количество элементов нельзя [официально].