Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/22: Рейтинг темы: голосов - 22, средняя оценка - 4.73
1 / 1 / 1
Регистрация: 14.12.2010
Сообщений: 121
1

Выход (остановка) функции

31.03.2012, 21:49. Показов 4593. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Где в этой функции нужно поставить break или goto что бы после нахождения файла 1.txt происходило (прерывание) остановка функции?
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
void Scan(AnsiString Path)
{
  TSearchRec sr;
  if(FindFirst(Path + "*.*", faAnyFile, sr) == 0)
    {
      do
        {
          if(sr.Attr & faDirectory)
            {
              if((sr.Name != ".") && (sr.Name != ".."))
                Scan(Path + sr.Name + "\\");
            }
          else
            {
              if(sr.Name == "1.txt")
                ShowMessage(Path + sr.Name);
            }
        }
      while(FindNext(sr) == 0);
      FindClose(sr);
    }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  Scan("D:\\");
}
}
пробовал break ставить после первого if и после
C++
1
ShowMessage(Path + sr.Name);
не работает
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.03.2012, 21:49
Ответы с готовыми решениями:

Остановка функции - c++
С помощью какой команды можно остановить функцию внутри другой функции с помощью оператора Switch....

Остановка функции?
Народ с таким столкнулся в первые. (defun PKZ1 (/ L W H W0 WV WN HP DPK DPP ZKR RK W1 WP H1 H2...

Выход из функции, если эта работает в другой функции
Здравствуйте, у мне такая проблема. У меня есть одна функция, которая полностью контролирует всю...

Остановка Выполнения Функции
Добрый день. Есть задача: создать форму с проверками на непустоту поля и логическое противоречие...

10
LK
Заблокирован
31.03.2012, 21:53 2
Попробуйте после if поставить
C++
1
return;
0
1 / 1 / 1
Регистрация: 14.12.2010
Сообщений: 121
01.04.2012, 21:52  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void Scan(AnsiString Path)
{
  TSearchRec sr;
  if(FindFirst(Path + "*.*", faAnyFile, sr) == 0)
    {
      do
        {
          if(sr.Attr & faDirectory)
            {
              if((sr.Name != ".") && (sr.Name != ".."))
                Scan(Path + sr.Name + "\\");
            }
          else
            {
              if(sr.Name == "1.txt")
                {ShowMessage(Path + sr.Name);
                 return 0;} // здесь имелось ввиду поставить?
            }
        }
      while(FindNext(sr) == 0);
      FindClose(sr);
    }
}
Добавлено через 23 часа 12 минут
ставил return, не помогло.
0
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,064
01.04.2012, 22:23 4
зачем zero после return ?
0
1 / 1 / 1
Регистрация: 14.12.2010
Сообщений: 121
01.04.2012, 22:43  [ТС] 5
это опечатка, в программе, zero нету.
0
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,064
02.04.2012, 07:25 6
Цитата Сообщение от aank10 Посмотреть сообщение
if(sr.Name == "1.txt")
{ShowMessage(Path + sr.Name);
return 0;}
Значит условие if возвращает 0 вот и не работает return.
0
1 / 1 / 1
Регистрация: 14.12.2010
Сообщений: 121
02.04.2012, 09:17  [ТС] 7
Так как прервать функцию после нахождения пути к файлу?
0
LK
Заблокирован
02.04.2012, 10:34 8
напишите ему
C++
1
FindClose(sr);
0
1 / 1 / 1
Регистрация: 14.12.2010
Сообщений: 121
03.04.2012, 10:32  [ТС] 9
C++
1
2
3
if(sr.Name == "1.txt")
                {ShowMessage(Path + sr.Name);
                FindClose(sr);} // пытался здесб ставить, выбивало ошибку
0
LK
Заблокирован
03.04.2012, 11:30 10
текст ошибки доступен?
0
1 / 1 / 1
Регистрация: 14.12.2010
Сообщений: 121
03.04.2012, 19:32  [ТС] 11
Упс, позабыл, ошибку не выбивает но функция продолжает работать. Даже после того как находит искомый файл.
0
03.04.2012, 19:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.04.2012, 19:32
Помогаю со студенческими работами здесь

Остановка функции setTimeout
Всем привет! Подскажите пожалуйста каким образом можно сделать остановку функции setTimeout по...

Строковые функции. Остановка цикла.
Вот бьюсь я уже второй день над этими стрковыми функциями. Уж больно они глупо придуманы. ...

Остановка рабочей функции потока
День добрый. Задумался над таким вот вопросом. Допустим, у меня есть две функции get(StopObj obj) и...

[Pawn] Остановка на конечной точке, или остановка поворота при достижении заданного угла
Всем здравствуйте. У меня такой вопрос, реализация, по возможности более просто, остановка на...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru