Форум программистов, компьютерный форум CyberForum.ru

Передача массива структур в функцию не указывая размера массива - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ в массивах С(28) и М(12) определить количество элементов до последнего максимального http://www.cyberforum.ru/cpp-beginners/thread615032.html
в массивах С(28) и М(12) определить количество элементов до последнего максимального
C++ Подсчитать в строке, содержащей арифметическое выражение, количество используемых цифр и букв, заменить "+" на "-", подсчитать количество действий Ввести строку А с клавиатуры, содержащую арифметическое выражение. Подсчитать количество используемых цифр и букв. Заменить операцию "+" на "-". Подсчитать количество действий в выражении. http://www.cyberforum.ru/cpp-beginners/thread615026.html
C++ Удалить каждое четное слово во введенной строке
удалить каждое четное слово во введенной строке
Сдвинуть элементы массива C++
Все элементы массива Х(30) сдвинуть на n позиций влево при помощи указателей
C++ В массиве М(45) найти максимальный среди отрицательных элементов и число нулевых элементов стоящих после него http://www.cyberforum.ru/cpp-beginners/thread615014.html
В массиве М(45) найти максимальный среди отрицательных элементов и число нулевых элементов стоящих после него
C++ Создать массив из элементов другого массива, которые являются полными квадратами В массиве С(100) лежат целые числа. Сформировать новый массив В таким образом, чтобы в него вошли те элементы массива С, которые являются полными квадратами (1,4,9,16,25...) подробнее

Показать сообщение отдельно
villu
202 / 202 / 4
Регистрация: 06.08.2011
Сообщений: 600
Записей в блоге: 1
02.07.2012, 13:29     Передача массива структур в функцию не указывая размера массива
ну так это тоже не проблема ...
если ты пошел по пути "не передачи размера", а передаешь просто кусок памяти, то он должен быть заполнен соответственно.

Можно забить память пробелами, а в последней выставить в ключе первым ноль.
C
1
2
3
4
5
6
    struct data *test;
    test = (struct data *)malloc(100 + 1);
    memset( test, ' ', sizeof(struct data) * 100 );
    test[100].key[0] = 0;
 
    printf("test.count = %d\n", struct_count( test ));
но лучше передавай размер. Просто меньше лишней работы будет.
 
Текущее время: 19:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru