Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

[Решено]Ошибка Missing ; при использовании div

55K
20 ноября 2010 года
Frio
25 / / 26.08.2010
Доброго времени суток. Появился такой вопрос. Допустим у меня есть на форме битмап и я хочу что бы он передвигался в какую-то определённыю точку. Как сделать что бы он двигался не по диагонали а потом по прямой а какбы по вектору сразу к той точке?
11
20 ноября 2010 года
oxotnik333
2.9K / / 03.08.2007
в чем проблема то? к примеру на 2 точки передвижения по Х одна точка передвижения по Y.
55K
20 ноября 2010 года
Frio
25 / / 26.08.2010
Вот он не хочет такое принимать...
 
Код:
CreaturePos1.x+=(MoveTo.x-CreaturePos1.x)div(MoveTo.y-CreaturePos1.y);


CreaturePos1 - координаты предметов
MoveTo - координаты перемещения для каждого из предметов
цикл есть просто не писал
Это если по Х он должен перемещаться дальше чем по У.... но он пишет ошибку.
1
20 ноября 2010 года
kot_
7.3K / / 20.01.2000
тут нет телепатов, дабы догадаться какую ошибку вам "он пишет". И ее надо привести - если вы не хотите что бы вас послали дальше чем ... У
55K
20 ноября 2010 года
Frio
25 / / 26.08.2010
Какой же вы умный однако... Пишет миссинг ";" Теперь вы наверное легче сможете понять как мне помочь.....Однозначно...
1
20 ноября 2010 года
kot_
7.3K / / 20.01.2000
Текст ошибки значит - пропущена ;. В строке, которая выше указанной (вероятнее всего). Либо в объявлении классов MoveTo т.п.
З.Ы. В правилах указано четко как и почему задавать вопросы. Если ты хочешь получить ответ на вопрос а не получить нарушение - вопросы надо задавать нормально, четко и корректно. И если сказано - что надо привести сообщение о ошибке - его надо привести, как и код, который его вызвал. Я думаю это понятно и сложностей не вызывает? На первый раз - предупреждение.
55K
20 ноября 2010 года
Frio
25 / / 26.08.2010
Нет, нигде не пропущено... Тут даже некуда поставить точку с запятой...

 
Код:
for(int i=1;i<100;i++) {
   if(CreaturePos1.x<MoveTo.x)
    if(MoveTo.x-CreaturePos1.x<MoveTo.y-CreaturePos1.y)
     CreaturePos1.x+=(MoveTo.x-CreaturePos1.x) div (MoveTo.y-CreaturePos1.y);
 ......................
 ......................


Причём если написать вот так

 
Код:
CreaturePos1.x+=2;

То всё нормально....Чудеса...
1
20 ноября 2010 года
kot_
7.3K / / 20.01.2000
ужас.
Ошибка в выделеном фрагменте
 
Код:
CreaturePos1.x+=(MoveTo.x-CreaturePos1.x) div (MoveTo.y-CreaturePos1.y);

div возращает структуру div_t и ее синтасис div_t div(int numer, int denom);
компилятор вполне обоснованно считает указанную строку - двумя строками, с разными операциями.
1
20 ноября 2010 года
kot_
7.3K / / 20.01.2000
вероятнее всего имелось ввиду чтото типа:

 
Код:
CreaturePos1.x+=(MoveTo.x-CreaturePos1.x) / (MoveTo.y-CreaturePos1.y);
55K
20 ноября 2010 года
Frio
25 / / 26.08.2010
Спасибо...Чтот я совсем забыл про обычное деление =\.....но всё равно странно то что даже когда я брал всё выражение после += в скобки выдавалась ошибка ";"....

Можно закрывать
1
20 ноября 2010 года
kot_
7.3K / / 20.01.2000
Цитата: Frio
странно то что даже когда я брал всё выражение после += в скобки выдавалась ошибка ";"....


скобки задают приоритет выполнения, а здесь нет приоритета - есть стандартные l-value и r-value - а за ними следует по сути следующее выражение без l-value с r-value - для С++ это нормально. Скорей всего, что следующая ошибка была про незакрытые скобки. :)

55K
20 ноября 2010 года
Frio
25 / / 26.08.2010
Да, совершенно верно.......Сволочь говорил что нужны скобки ))) он меня на коня поднял )))
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог