visual studio 2008 c++ возвращает неверный код ascii

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by SVAROG, 20 Sep 2009.

  1. SVAROG

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

    Joined:
    13 Feb 2007
    Messages:
    424
    Likes Received:
    86
    Reputations:
    -1
    выполняю значит
    Code:
    cout << (int)"§";
    он мне показывает: 4290784
    хотя php на этой же винде возвращает 167
    при выполнени
    PHP:
    echo(ord("§"));
    что думаю более правильно, есть мысли господа?
    З.Ы. коды стандартных символов пхп и си возвращают одинаковые.
     
  2. DFrost

    DFrost Member

    Joined:
    5 Jun 2009
    Messages:
    18
    Likes Received:
    23
    Reputations:
    0
    cout<<(int)'§' попробуй
     
  3. SVAROG

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

    Joined:
    13 Feb 2007
    Messages:
    424
    Likes Received:
    86
    Reputations:
    -1
    выдал -89 :(
    если +256 то правильно будет!! )))
    но почему так??? :confused:
     
  4. DFrost

    DFrost Member

    Joined:
    5 Jun 2009
    Messages:
    18
    Likes Received:
    23
    Reputations:
    0
    unsigned char c='§';
    cout<<(int)c<<endl;
     
    1 person likes this.
  5. DFrost

    DFrost Member

    Joined:
    5 Jun 2009
    Messages:
    18
    Likes Received:
    23
    Reputations:
    0
    просто в с++ значения обычно не от 0 до 255, а с -128
     
  6. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,023
    Likes Received:
    1,297
    Reputations:
    327
    cout << (int)(((int)'A')&0xFF); вместо А - твой символ