Форум программистов, компьютерный форум CyberForum.ru

Почему не работает счетчик в функции? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Написать программу, которая удаляет из введенного строки любой необходимый введен с клавиатуры символ. Процесс удаления выделите в отдельную процедуру http://www.cyberforum.ru/cpp-beginners/thread888353.html
Здравствуйте, Уважаемые. Очень срочно нужна Ваша помощь, в решении данной задачи: Написать программу, которая удаляет из введенного строки любой необходимый введен с клавиатуры символ. Процесс удаления выделите в отдельную процедуру.
C++ Заданная последовательность целых чисел. Найти количество чисел, делящихся на 3 и 5 без остатка Здравствуйте, Уважаемые. Очень срочно нужна Ваша помощь, в решении данной задачи: Заданна последовательность целых чисел. Найти количество чисел, делящихся на 3 и 5 без остатка. http://www.cyberforum.ru/cpp-beginners/thread888352.html
В матрице М (N, M) найти сумму элементов четных строк C++
Здравствуйте, Уважаемые. Очень срочно нужна Ваша помощь, в решении данной задачи: В матрице М (N, M) найти сумму элементов четных строк.
Вывести все слова в предложении в которых нет повторяющихся букв C++
Вывести все слова в предложении в которых нет повторяющихся букв. Как это реализовать ? Желательно примеры, заранее спасибо
C++ Програма для диплома http://www.cyberforum.ru/cpp-beginners/thread888345.html
Здраствуйте, как видно по теме мне нужно зделать програму для диплома програма должна находить 2 файлы с одинаковым размером разширением и названием но я даже не представляю как зделать такой поиск =( если вас не затруднит кинуть похожий код или дать сылку где есть статья в каторая раскажут как зделать ету програму и кстате програму буду делать на с++ builder так что если знаете какие компоненты...
C++ random R=random(101)/100.; Это генератор случайных чисел (0;1)? подробнее

Показать сообщение отдельно
ВДВ777
-4 / 0 / 0
Регистрация: 12.03.2013
Сообщений: 110
02.06.2013, 23:32  [ТС]     Почему не работает счетчик в функции?
Цитата Сообщение от Croessmah Посмотреть сообщение
А теперь рассмотрим поближе:
C++
1
2
3
4
5
6
7
8
9
10
if(V==0){//V==0, условие выпонено
    if (rm&1&cPos.x>X &cPos.x<X1&cPos.y>Y &cPos.y<Y1){//Здесь true
        V++;//V==1
    }
}
if (V==1){//Теперь V уже равно 1, поэтому true
    if (rm&1&cPos.x>X &cPos.x<X1&cPos.y>Y &cPos.y<Y1){//Условие аналогично, поэтому true
        V--;//V==0
    }
}
попробовал и убрал вообще условие
C++
1
2
3
4
5
if (V==1){//Теперь V уже равно 1, поэтому true
    if (rm&1&cPos.x>X &cPos.x<X1&cPos.y>Y &cPos.y<Y1){//Условие аналогично, поэтому true
        V--;//V==0
    }
}
все равно значение приравнивается к 0
Попробовал вообще в функции оставить только это
C++
1
2
3
4
void RetCoord((int X , int Y , int X1 , int Y1 , int V , char pString[],D3DCOLOR col , D3DCOLOR col2)
{
V++;
}
мне было смешно потому что значение было равно 1 , потому что прибавляет +1 и в эту же миллисекунду -1
я провел еще экспиремент и сделал вот такой код
C++
1
2
3
4
5
int A;
void RetCoord((int X , int Y , int X1 , int Y1 , int V , char pString[],D3DCOLOR col , D3DCOLOR col2)
{
A++;
}
ну тут конечно все заработало как нужно почему-то, к переменной A прибавлялось +1 в секунду(или пол секунды,не важно - значение увеличивалось короче)

В чем дело не могу разобраться....
void RetCoord - это поток если что и вызываю функцию я тоже в потоке , может из-за этого?

Добавлено через 4 часа 40 минут
Цитата Сообщение от ВДВ777 Посмотреть сообщение
попробовал и убрал вообще условие
C++
1
2
3
4
5
if (V==1){//Теперь V уже равно 1, поэтому true
    if (rm&1&cPos.x>X &cPos.x<X1&cPos.y>Y &cPos.y<Y1){//Условие аналогично, поэтому true
        V--;//V==0
    }
}
все равно значение приравнивается к 0
Попробовал вообще в функции оставить только это
C++
1
2
3
4
void RetCoord((int X , int Y , int X1 , int Y1 , int V , char pString[],D3DCOLOR col , D3DCOLOR col2)
{
V++;
}
мне было смешно потому что значение было равно 1 , потому что прибавляет +1 и в эту же миллисекунду -1
я провел еще экспиремент и сделал вот такой код
C++
1
2
3
4
5
int A;
void RetCoord((int X , int Y , int X1 , int Y1 , int V , char pString[],D3DCOLOR col , D3DCOLOR col2)
{
A++;
}
ну тут конечно все заработало как нужно почему-то, к переменной A прибавлялось +1 в секунду(или пол секунды,не важно - значение увеличивалось короче)

В чем дело не могу разобраться....
void RetCoord - это поток если что и вызываю функцию я тоже в потоке , может из-за этого?
все спс разобрался - нужно было после int и перед переменной поставить "&".
 
Текущее время: 20:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru