Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Синтаксис goto

Страниц (1): [1]
 

1. Redear - 01 Сентября, 2026 - 09:33:01 - перейти к сообщению
Здравтсвуйте, Нужен ответ от разраба
1) Можно ли прыгать в киборе с гото, внутрь конструкции if, else, for итд.
Не приводит ли это к утечкам памяти.

function myFunction() {

if (..) { goto inside_if; }

if (..) {
...
}
else {
inside_if:;
int x=5;
}

return;
}

2) обязательно ли любая функция должна иметь return. то есть
function x() {
int x=1;
...
return 1;
}

или
function x() {
int x=1;
...
}


Меня конечно интересует вопрос стабильности работы программы 24/7. чтобы не было утечек памяти
(Добавление)
также еще вопрос к разрабу, у меня есть массив,
сейчас вместо знака запятой стоит звездочка, это рабочий вариант. но как поставить туда заяпятую, если стоит запятая программа крашиться. если поставить экранирование '^,' краша нет, не ячейка в массиве не считывается как запятая.

char KeyDesc[105] = {
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
' ',0,0,0,0,0,0,0,0,0,
'0','1','2','3','4','5','6','7','8','9',
'~','-','=','[',']',';',0,0, '*', '.','/',
'a','b','c','d','e','f','g','h','i','j','k','l','m',
'n','o','p','q','r','s','t','u','v','w','x','y','z',
0,0,0,0,0,0,0,0,0,0,0,0,0,'+',0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
};
2. Kibor - 02 Сентября, 2026 - 10:22:26 - перейти к сообщению
char KeyDesc[105] = {
0,formatic(59),0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
' ',0,0,0,0,0,0,0,0,0,
'0','1','2','3','4','5','6','7','8','9',
'~','-','=','[',']',';',0,0, '*', '.','/',
'a','b','c','d','e','f','g','h','i','j','k','l','m',
'n','o','p','q','r','s','t','u','v','w','x','y','z',
0,0,0,0,0,0,0,0,0,0,0,0,0,'+',0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
};


messagebox(KeyDesc[1]);

гото не должен приводить к каким то утечкам.
3. Redear - 02 Сентября, 2026 - 17:40:17 - перейти к сообщению
 Kibor пишет:
char KeyDesc[105] = {
0,formatic(59),0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
' ',0,0,0,0,0,0,0,0,0,
'0','1','2','3','4','5','6','7','8','9',
'~','-','=','[',']',';',0,0, '*', '.','/',
'a','b','c','d','e','f','g','h','i','j','k','l','m',
'n','o','p','q','r','s','t','u','v','w','x','y','z',
0,0,0,0,0,0,0,0,0,0,0,0,0,'+',0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
};


messagebox(KeyDesc[1]);

гото не должен приводить к каким то утечкам.


спасибо, мне нужны практические рекомендации по уменьшению потребления памяти кибором. у меня 2exe от кибора которые работают через shared memory. 30к строк кода, все максимально оптимизировано, не повторяется. потребление памяти на 2 кибора 1.2-1.4гб. я запускаю на сервере 20 окон и у меня режется только 30гб памяти только кибором. это очень непрактично
(Добавление)
я подозреваю, что это изза большого кол-ва переменных, причем разумеется в каждой функции свои переменные. я полагаю у кибора общий стек, а все переменные глобальные и инициализируется в момент запуска программы, и соответственно, никакого уничтожения в памяти их нет
4. Redear - 02 Сентября, 2026 - 20:04:34 - перейти к сообщению
также напишите ответ на вопрос по поводу return в функциях. обязателен ли он. или у вас при компиляции все автоматически проставляется
5. Redear - 02 Сентября, 2026 - 22:26:28 - перейти к сообщению
 Redear пишет:
также напишите ответ на вопрос по поводу return в функциях. обязателен ли он. или у вас при компиляции все автоматически проставляется


привет

func (int x) {

if (x==1) return 1;
if (x==2) return 2;
if (x==3) { x=x+1; }

}

как в таком случае, тут 1) x может придти большим числом, либо при x3 нет возврата, а при 1 и 2 есть. интересует стабильность в долгосроке
6. Redear - 04 Сентября, 2026 - 11:49:45 - перейти к сообщению
я протестировал, если запустить чистый кибор, создать exe в котором только все переменные, которые у меня есть в скрипте, он весит в памяти 70(чистый кибор) -> стало 110 mb. То есть под переменные выделяется всего 40 мб. От куда навешивается еще 700mb в полном скрипте??

Powered by ExBB FM 1.0 Final