Один глобальный, просто не забывать его чистить масс[0] = EOS; однопоточность позволяет же. + глобальный массив не занимает стек.
ну я использую strdel каждый раз после использование массива для избежание смешивание информации, но все же что лучше использовать для оптимизации?
- - - Добавлено - - -
Вот это то что нужно!+ глобальный массив не занимает стек.
Чтобы избежать "смешивание" информации, то воспользуйтесь вариантом от 'LINKINPARK' и присвойте первой ячейке массива значение нулевого символа:
PHP код:
arr[0] = EOS;
из-за однопоточности данные не смешаются, НО я тестировал обычные переменные(int). Доступ к данным и вычисления у локальных переменных в этих тестах быстрее, чем у глобальных, по моим тестам быстрее всего выходит использовать локальные static переменные.
при использование format массив сам очищается, а после того как вы использовали strcat, советую вручную очищать массив после окончание функции со strcat
Со strcat всё предельно ясно, я в последнем посте на 1 странице уже написал по этому поводу. Я тоже думал что format очистит массив, но при одновременном использовании, для нескольких клиентов (игроков) - редко, но бывают путаницы, к примеру - цвет сообщения, 0 ID должен был получить зелёное сообщение, а 1 ID - жёлтое, в итоге всё получается наоборот. Пробовал очищать массив перед каждым использованием format - не компилируется мод вообще, просто зависает, почему и ищу другой способ какой-нибудь (кроме локальных массивов, хотелось бы всё же использовать глобальные).
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)