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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Shutz00
0 / 0 / 0
Регистрация: 13.02.2011
Сообщений: 23
#1

Вызов функции в C++ - C++

15.04.2012, 17:20. Просмотров 722. Ответов 3
Метки нет (Все метки)

есть циклический вызов функции:
C++
1
2
3
4
                for (int i=0; i<start; i++)
                {
                if (classicZOT()) Psync++;
                }
функция classicZOT() типа bool, возвращает true или false.
Почему-то при таком вызове функция вызывается один раз, а возвращаемое ей значение прогоняется через цикл. Как сделать так, чтобы на каждой новой итерации функция вызывалась заново?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2012, 17:20     Вызов функции в C++
Посмотрите здесь:

вызов функции из под функции - C++
Добрый вечер. Такая ситуация: есть функция, назовем ее MainThreadFunc. Как можно сделать так, чтобы любая другая функция, которую я напишу,...

вызов функции - C++
как правильно вызвать данную функцию? typedef int key_t; typedef double value_t; value_t find(key_t key);

Вызов функции - C++
Арифметические операции с длинными числами, которые представлены в виде массивов: есть функция умножения двух длинных чисел...

Вызов функции - C++
Здравствуйте! Не могу вызвать функцию, объясните причину. template &lt;typename T&gt; void Calc_etalon (QDir &amp; DirTxt) { ...

Вызов функции. - C++
Здрасти, у меня есть функция вычесления суммы цифр числа int sum_digit(int x) { int sum=0; while (x!=0){ ...

Вызов функции - C++
Здравствуйте! Такая задача:Разработать и испытать функцию, которая удаляет из целочисленного одномерного массива все элементы, совпадающие...

Вызов функции - C++
Укажите правильный вариант вызова функции вместо пропуска …….. void func(int *p, int n, float k) { } main( ) { int...

Вызов функции - C++
Привет всем. Вот такая структура кода: void Sailary() void SetShop() void SetMenu() void ResetData() int main()

Вызов функции - C++
Написать вызов функции для строковых переменных, помогите!

Вызов функции - C++
Помогите пожалуйста решить завтра зачет, а задачу не могу решить последнюю. Составить программу формирования элементов массивов Х, У и...

Вызов функции - C++
Имеется такая вот функция, и к ней нужно написать вызов. #include &lt;stdio.h&gt; char *F12(char **p, int n) { int k,i,j; for...

Вызов функции - C++
#include &quot;stdafx.h&quot; #include &lt;locale&gt; #include &lt;iostream&gt; using namespace std; class Bankomat { public: Bankomat(){}; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
1890 / 1745 / 118
Регистрация: 25.03.2012
Сообщений: 5,924
Записей в блоге: 1
15.04.2012, 17:58     Вызов функции в C++ #2
возможно, оптимизатор решил, что содержание функции никак не зависит от счётчика цикла и решил оптимизировать процесс.
Хотя слабо верится.
Toshkarik
1140 / 857 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
15.04.2012, 18:24     Вызов функции в C++ #3
А можно глянуть на реализацию функции? Потому что, например, в данном примере функция вызывается на каждой итерации.
Shutz00
0 / 0 / 0
Регистрация: 13.02.2011
Сообщений: 23
15.04.2012, 23:37  [ТС]     Вызов функции в C++ #4
Вот сама функция:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
bool classicZOT()
{
        LRR();
        randomize();
        bool count1=false;      //удачная попытка
        int m;             //счетчик совпадений
        int i;
if  (Form1->Edit1->Text != "")
        {Form1->Edit1->Text = AnsiReplaceStr(Form1->Edit1->Text, ".", ",");
        Kosh = StrToFloat(Form1->Edit1->Text);}
        else {MessageBox(MB_OK," Неверно заполнены исходные данные  ", " Ошибка!", MB_ICONERROR);}
if (Kosh > 1)
        {MessageBox(MB_OK," Коэффициент ошибок не может быть больше 1  ", " Ошибка!", MB_ICONERROR);
        Form1->Edit1->Text = "";}
 
if  (Form1->Edit3->Text != "") RkP = StrToInt(Form1->Edit3->Text);
        else MessageBox(MB_OK," Неверно заполнены исходные данные  ", " Ошибка!", MB_ICONERROR);
 
        count=0;
        m=0;
        for (i=0; i<RkP; i++)
                if ((Kosh*1000)>(random(1000))) count++;
 
        for (i=0; i<count; i++)
                {
                nomer[i]=random(RkP);
                rekp[nomer[i]]=rekp[nomer[i]]^1;
                }
 
        for (i=0; i<RkP; i++)
                {
                if (rekp[i]==-1) break;
                else
                        {
                        if (rekp[i]==rekp1[i]) m++;
                        else m=0;
                        if (m==M)
                                {
                                count1=true;
                                break;
                                }
                        }
                }
 
return (count1);
 
}
Yandex
Объявления
15.04.2012, 23:37     Вызов функции в C++
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru