ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 13.06.2009, 15:36
Djezul
Познающий
Регистрация: 08.12.2008
Сообщений: 58
С нами: 9170134

Репутация: 10
По умолчанию

Цитата:
Сообщение от Ra$cal  
GetUserName - получить имя пользователя. инклюдить windows.h может понадобится Advapi32.lib.

system() для взаимодействия использовать категорически не советую. максимум - system("pause"). ито лучше юзать getch и иже с ними
О спс. С этим разобрался.
А в чём ошибка тут,
Код:
int Shop(int size_of_inventory){
	enum {Healing_botle=1,Power_botle=2,Intelect_botle=3,Exit_the_shop=4};
	bool shop=true;
	int shop_action;
	int shop_kol;
	int i=0,j=0;;
	int price;
	system("cls");
	Info("You will get to the shop soon!");
	while(shop){
		system("cls");								
		cout<<"Healing botle - 1 ||| Price - 100\nPower botle - 2 ||| Price - 300\nIntelect botle - 3 ||| Price - 300\n"
			<<"---------------------------------\nExit the shop - 4\n\n";
		cin>>shop_action;
		switch(shop_action){
			case Healing_botle:
				cout<<"\nHow many?\n\n";
				cin>>shop_kol;
				price=100;
				if(Shop_Buy(player.money,shop_kol,price)==1){
					Shop_Error_Slotes(size_of_inventory,shop_kol);
					player.money=player.money-(shop_kol*price);
					for (i=size_of_inventory;i<10&&j<shop_kol;i++,j++,size_of_inventory++){
						player.inventar[i].name=1;
						player.inventar[i].bonus=player.hp+30;
					}
				}
				i=0;
				j=0;
				break;
			case Power_botle:
				cout<<"\nHow many?\n\n";
				cin>>shop_kol;
				price=300;
				if(Shop_Buy(player.money,shop_kol,price)==1){
					Shop_Error_Slotes(size_of_inventory,shop_kol);
					player.money=player.money-(shop_kol*price);
					for (i=size_of_inventory;i<10&&j<shop_kol;i++,j++,size_of_inventory++){
						player.inventar[i].name=2;
						player.inventar[i].bonus=player.power+30;
					}
				}
				i=0;
				j=0;
				break;
			case Intelect_botle:
				cout<<"\nHow many?\n\n";
				cin>>shop_kol;
				price=300;		
				if(Shop_Buy(player.money,shop_kol,price)==1){
					Shop_Error_Slotes(size_of_inventory,shop_kol);
					player.money=player.money-(shop_kol*price);
					for (i=size_of_inventory;i<10&&j<shop_kol;i++,j++,size_of_inventory++){
						player.inventar[i].name=3;
						player.inventar[i].bonus=player.intelect+30;
					}
				}
				i=0;
				j=0;
				break;
			case Exit_the_shop:
				shop=false;
				break;
		}
	}
	shop=true;
	return size_of_inventory;
}
прототип создаю , вызываю так,
case Shop:
Shop(size_of_inventory);

break;

Компилятор выкидует с ошибкой , Ошибка 1 error C2064: результатом вычисления фрагмента не является функция, принимающая 1 аргументов c:\users\антон\documents\visual studio 2008\projects\bk\bk\bk.cpp 138

Немогу разобраться , что это за ошибка уже в мсдн втыкаю 20 минут

а и такой вопрос, как сделать рандомное число из промежутка? Доспустим, чтобы всегда бралось разное число из промежутка от 1 до 100

Последний раз редактировалось Djezul; 13.06.2009 в 15:52..
 
Ответить с цитированием

  #2  
Старый 13.06.2009, 15:54
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
С нами: 9017461

Репутация: 414


По умолчанию

Цитата:
case Shop:
В case'e не может быть ф-ции.
 
Ответить с цитированием

  #3  
Старый 13.06.2009, 16:05
Djezul
Познающий
Регистрация: 08.12.2008
Сообщений: 58
С нами: 9170134

Репутация: 10
По умолчанию

как не может если у меня выше написано
case Inventary:
Inventory(size_of_inventory);
break;

и всё норм, а что тогда можно сделать? Просто позаменять на if всё?
 
Ответить с цитированием

  #4  
Старый 13.06.2009, 16:09
Djezul
Познающий
Регистрация: 08.12.2008
Сообщений: 58
С нами: 9170134

Репутация: 10
По умолчанию

Поменял всё на иф , таже самая ошибка!
 
Ответить с цитированием

  #5  
Старый 13.06.2009, 16:21
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
С нами: 9017461

Репутация: 414


По умолчанию

Виложи нормальный код с точным описанием ошибки!
 
Ответить с цитированием

  #6  
Старый 13.06.2009, 16:25
Djezul
Познающий
Регистрация: 08.12.2008
Сообщений: 58
С нами: 9170134

Репутация: 10
По умолчанию

это и есть точный код, а описание ошибки такое какое выдаёт компилятор, скопировал полностью, компилятор висуал студио 2008
 
Ответить с цитированием

  #7  
Старый 13.06.2009, 16:54
Ra$cal
Постоянный
Регистрация: 16.08.2006
Сообщений: 640
С нами: 10386906

Репутация: 599


По умолчанию

Djezul
ты лучше начни с улучшения кода и ооп. то что ты щас пишешь, это по сути си стайл. если бы ты юзал ооп, вся программа уменьшилась бы раз так в 8. та даже если ты банально прекратишь копипастить код, сделаешь функции для покупки товаров, вывода инфы итп, ты уже сократишь код программы и упростишь возможности ее модификации. привыкай, что просто написать программу - мало. потом ее надо поддерживат, улучшать и исправлять.
 
Ответить с цитированием

  #8  
Старый 13.06.2009, 18:01
Djezul
Познающий
Регистрация: 08.12.2008
Сообщений: 58
С нами: 9170134

Репутация: 10
По умолчанию

Я её как раз и улучшаю, поэтому и перевожу всё в функции, а ооп я не использую , так как пишу на си, сначала, хочю его выучить, а учить лучше на практике__)) , тем более название раздела си/си++ , я думал и так понятно что это си. Кстати проблему я решил, просто названия функции и константы совпадали, вот и всё))

Последний раз редактировалось Djezul; 13.06.2009 в 18:16..
 
Ответить с цитированием

  #9  
Старый 13.06.2009, 18:17
razb
Постоянный
Регистрация: 24.03.2009
Сообщений: 670
С нами: 9017461

Репутация: 414


По умолчанию

Цитата:
тем более название раздела си/си++ , я думал и так понятно что это си.
Достаточно взглянуть на использование потоковых классов что говорит о том что ты используешь с++. Советую перечитать книгу и понять отличия этих языков.
 
Ответить с цитированием

  #10  
Старый 13.06.2009, 18:33
Djezul
Познающий
Регистрация: 08.12.2008
Сообщений: 58
С нами: 9170134

Репутация: 10
По умолчанию

Возможно ты и прав, не буду спорить так как я пока мало что в этом понимаю, но в компьютерной школе , куда я стал недавно ходить, мы учим пока си а не си++ , и там нам препод сказал делать так.
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Часто задаваемые вопросы по MySQL Серый PHP 5 28.12.2006 18:26
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.