[ C / C++ ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Ra$cal

    Ra$cal Elder - Старейшина

    Joined:
    16 Aug 2006
    Messages:
    670
    Likes Received:
    185
    Reputations:
    78
    memcmp в помощь
     
  2. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    >>это не математика, где от вас требуется типовое решение.
    неудачное сравнение =)

    if(olo1==olo2) - так ты адреса массивов сравниваешь
     
  3. mr.The

    mr.The Elder - Старейшина

    Joined:
    30 Apr 2007
    Messages:
    1,080
    Likes Received:
    456
    Reputations:
    38
    да, а так работает.. как-то говнисто выглядит.
     
    #3123 mr.The, 11 Jun 2009
    Last edited: 11 Jun 2009
    3 people like this.
  4. Ra$cal

    Ra$cal Elder - Старейшина

    Joined:
    16 Aug 2006
    Messages:
    670
    Likes Received:
    185
    Reputations:
    78
    очень даже удачное. когда в универе давали задания были пункты типа решить систему уравнений методом крамера. и никак иначе.

    сделай класс оболочку и перегрузи у него оператор == и != =) и будет все красиво.
     
    2 people like this.
  5. ..::Hollywood::..

    ..::Hollywood::.. New Member

    Joined:
    23 Apr 2009
    Messages:
    33
    Likes Received:
    1
    Reputations:
    0
    весь измаялся. вот код
    #include <iostream>
    using namespace std;
    int main();
    int Add (int x, int y);
    {
    cout << " In Add() ,received "<<x<<" and "<<y<<" \n";
    return (x+y);
    }
    int main()
    {
    Add(3,5);
    return 0;
    }

    [​IMG]

    не компилируется ни одной из visual studio ни в express edition ни в полновесной visual studio 2008/
    подскажите пожалуйста в чем дело.
     
  6. Fata1ex

    Fata1ex Elder - Старейшина

    Joined:
    12 Dec 2006
    Messages:
    703
    Likes Received:
    300
    Reputations:
    38
    Может в прототипах :)
     
    #3126 Fata1ex, 11 Jun 2009
    Last edited: 11 Jun 2009
  7. ..::Hollywood::..

    ..::Hollywood::.. New Member

    Joined:
    23 Apr 2009
    Messages:
    33
    Likes Received:
    1
    Reputations:
    0
    вот ссылка где это обсуждалось.просто достала эта тема мать ее. че делать ума не приложу,новичок емае зеленый.
     
    1 person likes this.
  8. new-sl

    new-sl New Member

    Joined:
    27 May 2009
    Messages:
    46
    Likes Received:
    0
    Reputations:
    -1
    lol

    #include <iostream>
    using namespace std;
    int main();
    int Add (int x, int y)
    {
    cout << " In Add() ,received "<<x<<" and "<<y<<" \n";
    return (x+y);
    }
    int main()
    {
    Add(3,5);

    system ("pause");
    return 0;

    }
     
  9. SHARA

    SHARA Elder - Старейшина

    Joined:
    26 May 2007
    Messages:
    69
    Likes Received:
    7
    Reputations:
    0
    Mozy Прав это мы не проходили ахахахах. На самом деле вязлся С++ учить сам и до sizeof() я пока не дошел(теперь буду знать). Спасибо за ответ Mozy и Ra$cal
     
  10. Djezul

    Djezul New Member

    Joined:
    8 Dec 2008
    Messages:
    43
    Likes Received:
    2
    Reputations:
    0
    как при выводе строки в файл сделать перевод строки? Пробовал имя_файла << "\n" , чёто не работает((
     
  11. .ATK

    .ATK Active Member

    Joined:
    20 Feb 2009
    Messages:
    143
    Likes Received:
    111
    Reputations:
    9
    \r\n
     
    2 people like this.
  12. _nic

    _nic Elder - Старейшина

    Joined:
    5 May 2006
    Messages:
    651
    Likes Received:
    54
    Reputations:
    3
    Подскажите почему эта ф-ция
    Code:
    char* regtp(DWORD tp)
    {
    if(tp==REG_BINARY){return("REG_BINARY");}
    if(tp==REG_DWORD){return("REG_DWORD");}
    if(tp==REG_DWORD_LITTLE_ENDIAN){return("REG_DWORD_LITTLE_ENDIAN");}
    if(tp==REG_DWORD_BIG_ENDIAN){return("REG_DWORD_BIG_ENDIAN");}
    if(tp==REG_EXPAND_SZ){return("REG_EXPAND_SZ");}
    if(tp==REG_LINK){return("REG_LINK(reserved for system)");}
    if(tp==REG_MULTI_SZ){return("REG_MULTI_SZ");}
    if(tp==REG_NONE){return("REG_NONE");}
    if(tp==REG_QWORD){return("REG_QWORD");}
    if(tp==REG_QWORD_LITTLE_ENDIAN){return("REG_QWORD_LITTLE_ENDIAN");}
    if(tp==REG_SZ){return("REG_SZ");}
    }
    
    В борладнском IDE работает нормально а в вижуал студио выбивает ошибку доступа к памяти?
     
  13. Roston

    Roston Elder - Старейшина

    Joined:
    31 Jul 2008
    Messages:
    337
    Likes Received:
    104
    Reputations:
    8
    привет всем....
    надо мануал по графике в С... (<graphics.h>)
    я понимаю что это оч старое.. но нуо для лабораторной работы.....
    Компилятор Борланд С++ 3.0
     
  14. Djezul

    Djezul New Member

    Joined:
    8 Dec 2008
    Messages:
    43
    Likes Received:
    2
    Reputations:
    0
    Появилось ещё несколько вопросов, можно ли как то узнать имя пользователь , который сейчас использует систему, и как после отправки запроса через функцию system() , ответить на вопрос продолжить , да . Вот пробовал после первого вопроса посылать 2 игриком, и потом 3 с аски кодом ентера, но почему то не выходит, скорее всего после 1 запроса прога сразу выводит сообщение и ждёт продолжения, а потом выполняются 2 вторых запроса, как можно решить эту проблему?
     
  15. Ra$cal

    Ra$cal Elder - Старейшина

    Joined:
    16 Aug 2006
    Messages:
    670
    Likes Received:
    185
    Reputations:
    78
    GetUserName - получить имя пользователя. инклюдить windows.h может понадобится Advapi32.lib.

    system() для взаимодействия использовать категорически не советую. максимум - system("pause"). ито лучше юзать getch и иже с ними
     
  16. new-sl

    new-sl New Member

    Joined:
    27 May 2009
    Messages:
    46
    Likes Received:
    0
    Reputations:
    -1




    в принцыпи должно всё работать может тиы её неправилно исползуеш в вызывающеи функций
    вот неболшои пример хоть и ламерски думаю поможет

    #include <iostream>
    using namespace std;

    char *ft();

    int main ()
    {

    cout<<ft()<<endl; /* !!!!!!!!!!!!!!!!!! я когда тут *ft() он выводил мине тока первую букву "H", может поетому и ошибка попробуи исползовать укозатель без * если ты ето делаеш */

    system ("pause");
    return 0;

    }

    char *ft ()
    {
    return ("Hello");

    }


    если неполучится значит ошибка гдето в сровнении
    if(tp==REG_BINARY) ибо неизвестно откуда ти ето взял REG_BINARY наверное какаето гобалная переменая или константная ели нехуя ненаидеш значет не ветом куске ошибка :)
     
    #3136 new-sl, 13 Jun 2009
    Last edited: 13 Jun 2009
  17. Djezul

    Djezul New Member

    Joined:
    8 Dec 2008
    Messages:
    43
    Likes Received:
    2
    Reputations:
    0
    О спс. С этим разобрался.
    А в чём ошибка тут,
    Code:
    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 минут :confused:

    а и такой вопрос, как сделать рандомное число из промежутка? Доспустим, чтобы всегда бралось разное число из промежутка от 1 до 100
     
    #3137 Djezul, 13 Jun 2009
    Last edited: 13 Jun 2009
  18. razb

    razb Active Member

    Joined:
    24 Mar 2009
    Messages:
    658
    Likes Received:
    133
    Reputations:
    18
    В case'e не может быть ф-ции.
     
  19. Djezul

    Djezul New Member

    Joined:
    8 Dec 2008
    Messages:
    43
    Likes Received:
    2
    Reputations:
    0
    как не может если у меня выше написано
    case Inventary:
    Inventory(size_of_inventory);
    break;

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

    Roston Elder - Старейшина

    Joined:
    31 Jul 2008
    Messages:
    337
    Likes Received:
    104
    Reputations:
    8
    ап
     
Thread Status:
Not open for further replies.