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

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

1. Brumo - 31 Января, 2021 - 03:01:48 - перейти к сообщению
CODE:

int x[2],y[2];

x[0]=0;
y[0]=0;

x[1]=0;
y[1]=0;

x[2]=0;//для наглядности присваиваю значение третьему(не выделенному) элементу
y[2]=0;



findimage(1, #Image[0][0], 0, #x[0], #y[0], 0, 0, 1050, 900, 5, 5, 5, 5, 5, 5, 80, 1, w_KIB);

messagebox ("x[0]="+format(x[0])+", y[0]="+format(y[0])+", x[1]="+format(x[1])+", y[1]="+format(y[1])+", x[2]="+format(x[2])+", y[2]="+format(y[2]));


2. Zireael - 31 Января, 2021 - 03:23:23 - перейти к сообщению
 Цитата:
баг?

Нет.
 Цитата:
int x[2]

Массив на 2 элемента, т. е. x[0] и x[1], а обращение к третьему format(x[2]).
3. Kibor - 31 Января, 2021 - 03:27:05 - перейти к сообщению
Не стоит постить вопросы в теме о ошибках, если не уверены в правильности написанного кода. Переношу в вопросы.
4. Zireael - 31 Января, 2021 - 03:42:11 - перейти к сообщению
 Цитата:
x[2]=0;//для наглядности присваиваю значение третьему(не выделенному) элементу

Запись в невыделенную память приведет к вылету рано или поздно.
5. Brumo - 31 Января, 2021 - 03:53:40 - перейти к сообщению
 Zireael пишет:
Массив на 2 элемента, т. е. x[0] и x[1], а обращение к третьему format(x[2]).



я понимаю что обращаюсь к не выделенному элементу, и это ошибка, и вначале присвоил значение x[2]=0

вопрос был в том, не ошибка ли что кибор присваивает значение третьему элементу(x[2]=451), взяв его из y[0]...должен же был так и остаться 0
6. Kibor - 31 Января, 2021 - 04:02:51 - перейти к сообщению
 Brumo пишет:
вопрос был в том, не ошибка ли что кибор присваивает значение третьему элементу(x[2]=451), взяв его из y[0]...должен же был так и остаться 0

Нет. Это не ошибка.
Элемент x[2] на самом деле идет продолжением уже другой памяти, по адресу которой выделена переменная.
Так вот что будет в следующей переменной, то и покажет.
CODE:
int a[2];
a[2]=5;
int b=22;
messagebox (a[2]);//a[2] на самом деле ссылается на следующую объявленную переменную, которая идет в памяти после нее.

Powered by ExBB FM 1.0 Final