Просмотр полной версии : [Вопрос] Как заполнить массив?
nitecore
06.04.2021, 18:55
Всем привет. Такой вопрос, как заполнить массив определенным числом без использования цикла.
new array[20];
Видел что-то подобное:
array = { -1, ... };
Но к сожалению выдает ошибку
Shaolinka
06.04.2021, 19:01
Что за ошибку выдает?
nitecore
06.04.2021, 19:06
error 029: invalid expression, assumed zero
error 047: array sizes do not match, or destination array is too small
Shaolinka
06.04.2021, 19:10
Покажи, как объявляешь. Напоминаю, что заполнить массив таким образом, можно лишь во-время объявления.
nitecore
06.04.2021, 19:14
Покажи, как объявляешь. Напоминаю, что заполнить массив таким образом, можно лишь во-время объявления.
оу, вот в чем дело. спасибо, я понял. а больше нет способов? чтобы, скажем, перезаполнить потом
Shaolinka
06.04.2021, 19:15
Only loop
new array[20] = {-1, ...};
new const NULL_array[sizeof(array)] = {-1, ...};
И когда нужно будет "обнулить" массив:
array = NULL_array;
Pro_Coder
07.04.2021, 11:58
Ксати, еще что касаемо
array = { -1, ... }
можно так
array = {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1};
Ну это уже так сказать для любителя, и ваше цикл использую, для меня в этом месте не оптимизация
Ксати, еще что касаемо
array = { -1, ... }
можно так
array = {-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1};
Ну это уже так сказать для любителя, и ваше цикл использую, для меня в этом месте не оптимизация
Этот вариант, по сути, ничем не отличается от моего варианта :) Вся разница лишь в том, что в моём случае массив создаётся явно, а в твоём - нет. Ну и в моём случае можно будет сколько угодно раз обнулять массив в разных участках кода и лишняя память, при этом, выделяться не будет, а в твоём случае на каждый отдельный случай будет создаваться свой массив. Ну это если грубо говоря
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot