
05.10.2008, 21:27
|
|
Новичок
Регистрация: 21.09.2008
Сообщений: 16
С нами:
9282270
Репутация:
52
|
|
Каким образом в операторе if (в С) можно остановить выполнение программы, при выполнении заданного условия?
Код:
int main() {
//твой текст
if (temp==0) return 0;
//текст2
return 0;
}
Лучше используй "return 0;" это стандарт. Если же это условие например ошибка записи/чтения файла, то можно return(21); 21-это код ошибки, если программа завершилась удачно, то его ставят 0, если с ошибкой, то 1-255.
Часто полезно испоьзовать оператор выхода из цикла- "break".
Это как ? Вот так у меня не работает:
Убери exit(); и напиши return 0;. criz, код выхода (-1) не используют, он от 0 до 255.
|
|
|

05.10.2008, 21:28
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 303
С нами:
9746420
Репутация:
119
|
|
Большое спасибо! Если не трудно скажите, что означает эта -1 и что она даёт?
1 это статус завершения программы. exit() принимает в качестве аргумента любое число. 0 - означает успешное завершение.
Larionich, исправил, спасиб 
Последний раз редактировалось criz; 05.10.2008 в 21:31..
|
|
|

05.10.2008, 21:33
|
|
Участник форума
Регистрация: 02.12.2007
Сообщений: 132
С нами:
9705420
Репутация:
21
|
|
если кому интересно, то вот что я состряпал...
Код:
#include <iostream>
#include <fstream>
#include <windows.h>
using namespace std;
int main()
{
ofstream fol("C:/abc/ab/a.txt");
if(fol.fail())
{
cout << "creating...\n";
system("mkdir C:\\abc\\ab");
ofstream fol("C:/abc/ab/a.txt");
return main();
}
else
cout << "exist\n";
}
|
|
|

05.10.2008, 21:40
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 303
С нами:
9746420
Репутация:
119
|
|
Сообщение от Larionich
он от 0 до 255.
напомни плиз, где об этом написано
З.Ы. что-то мне подсказывает, что я был прав насчет exit(-1) 
Последний раз редактировалось criz; 05.10.2008 в 21:53..
|
|
|

05.10.2008, 21:41
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 303
С нами:
9746420
Репутация:
119
|
|
horlyk, попробуй так:
Код:
#include <iostream>
#include <windows.h>
using namespace std;
void main()
{
if (CreateDirectory(L"c:\\new",NULL))
cout << "Done!\n";
else
cout <<"Error\n";
}
Последний раз редактировалось criz; 05.10.2008 в 22:02..
|
|
|

05.10.2008, 21:43
|
|
Участник форума
Регистрация: 31.07.2008
Сообщений: 207
С нами:
9356941
Репутация:
107
|
|
http://www.opennet.ru/docs/RUS/bash_scripting_guide/a14876.html
Погугли - я много нашел.
ЗЫ это тебе не надо к работе ))
|
|
|

05.10.2008, 21:59
|
|
Познавший АНТИЧАТ
Регистрация: 21.03.2007
Сообщений: 1,200
С нами:
10074686
Репутация:
1204
|
|
1 это статус завершения программы. exit() принимает в качестве аргумента любое число. 0 - означает успешное завершение.
0 - означает 0 и ничего более в данном случае.
напомни плиз, где об этом написано
З.Ы. что-то мне подсказывает, что я был прав насчет exit(-1)
-1 = 255
|
|
|

05.10.2008, 22:01
|
|
Участник форума
Регистрация: 02.12.2007
Сообщений: 132
С нами:
9705420
Репутация:
21
|
|
работает, спс.
если кому интересно и удаление то...
Код:
void main()
{
if (CreateDirectory(L"c:\\new",NULL))
cout << "Done!\n";
else
cout <<"Exist\n";
int a;
cout << "\ndelete it?\n";
cin >> a;
if(a == 1)
RemoveDirectory(L"c:\\new");
system("PAUSE");
}
и кстати, как подпапки создавать?обычным CreateDirectory(L"c:\\new\\asd",NULL);
не выходит(
Последний раз редактировалось horlyk; 05.10.2008 в 22:07..
|
|
|

05.10.2008, 22:16
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 303
С нами:
9746420
Репутация:
119
|
|
Товарищи, меня тут 2 вопроса мучают:
1) как узнать какие порты открыты на локальной машине
2) как узнать какой процесс(какое приложение) использует конкретный порт?
|
|
|

05.10.2008, 22:53
|
|
Участник форума
Регистрация: 20.12.2007
Сообщений: 295
С нами:
9679872
Репутация:
347
|
|
Сообщение от criz
Товарищи, меня тут 2 вопроса мучают:
1) как узнать какие порты открыты на локальной машине
2) как узнать какой процесс(какое приложение) использует конкретный порт?
http://www.xakep.ru/magazine/xa/098/122/1.asp
|
|
|
|
 |
|
|
Здесь присутствуют: 3 (пользователей: 0 , гостей: 3)
|
|
|
|