[ 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. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    http://c.ittoolbox.com/groups/technical-functional/cpp-l/char-to-hex-conversion-792582
     
  2. Ni0x

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

    Joined:
    27 Aug 2006
    Messages:
    338
    Likes Received:
    157
    Reputations:
    37
    Piflit, &m_Edit.GetAt(0) бред в данном случае. Та функция принимает в качестве аргумента указатель на char. Могу лишь предпологать, что m_Edit.GetAt(0) возвращает CString. CString != char.
     
  3. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    а если использовать & указатель? может подскажешь, как надо?
    ЗЫ все больше и больше задумываюсь надо покупкой Страуструпа, но, к сожалению, читать его сейчас нет времени
     
    1 person likes this.
  4. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    .GetBuffer(0) тогда =)
     
  5. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    та же ошибка
    '&' requires l-value
     
  6. Ky3bMu4

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

    Joined:
    3 Feb 2007
    Messages:
    487
    Likes Received:
    284
    Reputations:
    42
    Я так понял нужно без глюков получить просвоить значение edit`а char* перменной.
    Для борланда:
    Code:
    char* text = Edit1->Text.c_str();
    Или там ещё можно Edit1->Lines->[чё-то там]

    Для vc++

    http://msdn2.microsoft.com/en-us/library/d1ae6tz5(VS.80).aspx
     
    1 person likes this.
  7. GlOFF

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

    Joined:
    8 May 2006
    Messages:
    689
    Likes Received:
    484
    Reputations:
    4
    У меня MSVC++ v8.0 и v6.0 - как оформить контролы в стиле XP?
    Пробывал прикрутить манифест:
    Вызвал InitCommonControls(); Но не помогает. Пробывал с masm9 - все нормально. В чем проблема?
     
  8. inv

    inv Banned

    Joined:
    3 Aug 2007
    Messages:
    261
    Likes Received:
    143
    Reputations:
    -58
    [имя твоегО exe.exe].[расширение манифеста(не помню)]
    ЛОЖИТЬ В ОДНУ ПАПКУ)
    у меня раньше так работало)
    КАКОЙ у меня был манифест я конечно не помню..в инете думаю есть
    кстати компилю на vc6
     
    #268 inv, 11 Sep 2007
    Last edited: 11 Sep 2007
  9. Ni0x

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

    Joined:
    27 Aug 2006
    Messages:
    338
    Likes Received:
    157
    Reputations:
    37
    Piflit, ну кто тебе сказал про & ??
    char *str = str2hex(m_Edit.GetBuffer(0));
     
  10. inv

    inv Banned

    Joined:
    3 Aug 2007
    Messages:
    261
    Likes Received:
    143
    Reputations:
    -58
    (msvc6)
    include <list>
    ....
    (в файле )
    C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE\iterator(14) : fatal error C1083: Cannot open include file: 'hash_map': No such file or directory


    это нормально?)
     
  11. Piflit

    Piflit Banned

    Joined:
    11 Aug 2006
    Messages:
    1,249
    Likes Received:
    585
    Reputations:
    31
    Ni0x, а то, что значение переменной str не выводится в messagebox'e (пустое поле) это нормально? типа str2hex воркенг или нет?
     
  12. Ni0x

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

    Joined:
    27 Aug 2006
    Messages:
    338
    Likes Received:
    157
    Reputations:
    37
    Piflit, сама функция рабочая, давай ты скинешь мне полный код своего проекта в пм и я постараюсь помочь.
     
    1 person likes this.
  13. GlOFF

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

    Joined:
    8 May 2006
    Messages:
    689
    Likes Received:
    484
    Reputations:
    4
    Помогите разобраться с генерацией случайных чисел в MSVC++ v6.0 .
    У Borland'a все понятно Randomize и Random(10, 20) - получаем от 10 до 20.
    Как быть в VC++ ? srand() , rand() как получить числа от и до. ???
     
  14. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    А в чём сложность? Чем боры выделились в этом плане?

     
    1 person likes this.
  15. _Great_

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

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,119
    Reputations:
    1,139
    А чего, простите, непонятного?
    rand() возвращает рандомное число, следовательно чтобы получить в интервале от A до B надо сделать:

    A + rand() % (B-A+1)
     
  16. _Great_

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

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,119
    Reputations:
    1,139
    Если тебе так неймется, то:

    #define Randomize() srand(time(0)) или srand(GetTickCount()) по желанию
    #define Random(A,B) ( (A) + rand() % ((B)-(A)+1) )

    Randomize();
    printf("Random value from 10 to 20: %d\n", Random(10,20));
     
    1 person likes this.
  17. GlOFF

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

    Joined:
    8 May 2006
    Messages:
    689
    Likes Received:
    484
    Reputations:
    4
    _Great_ Молодец, как всегда, показал высоты ;)

    Вся проблема в том, что при каждом запуске программа выдает одну и туже последовательность случайных чисел. :(
     
  18. Ky3bMu4

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

    Joined:
    3 Feb 2007
    Messages:
    487
    Likes Received:
    284
    Reputations:
    42
    Code:
    #include "time.h"
    srand(time(NULL)); //создаём генератор
    
    ИМХО: ранд\сранд - дерьмо. Тока добавляет размер к файлу + нелюбит /ENTRY:WinMain , я делаю так:
    Code:
    int rand = (GetTickCount())%1000 //получили рандомное 3-х значное число
    
     
    #278 Ky3bMu4, 12 Sep 2007
    Last edited: 12 Sep 2007
    3 people like this.
  19. Ni0x

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

    Joined:
    27 Aug 2006
    Messages:
    338
    Likes Received:
    157
    Reputations:
    37
    Ты вообще имеешь понятие о том, что делает ENTRY:WinMain ? rand/srand и не должны работать так, ведь это CRT. Вот неплохой пример:
    Code:
    //         -----------[ random stuff ]-----------
    //                           (c) drmist\STNC 2006
    
    #include "windows.h"
    #include <stdio.h>
    unsigned long rs_randseed;
    void _srand();
    unsigned long _rand();
    
    void _srand()
    {
      rs_randseed = GetTickCount();
    }
    
    unsigned long _rand()
    {
      rs_randseed++;
      return (rs_randseed*0xF02CE551) + 0x7FF2742B;
    }
    int main()
    {
    int a;
    _srand();
    a=_rand();
    char *pa;
    printf("This: ",itoa(a,pa,10));
    return 0;    
    }
    
    //         ^^^                                ^^^
    //         -----------[ random stuff ]-----------
    
     
    1 person likes this.
  20. _Great_

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

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,119
    Reputations:
    1,139
    Ni0x, а память выделять для pa, видимо, уже не принято?

    Пример, очевидно, стоит переписать:

    Code:
    int main()
    {
      int a;
      char pa[10];
    
      _srand();
      a=_rand() % 1000;
    
      printf("This: %s\n",itoa(a,pa,10));
      return 0;    
    }
     
    #280 _Great_, 12 Sep 2007
    Last edited: 12 Sep 2007
Thread Status:
Not open for further replies.