c++ Получить hex объекта string

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by maxfax, 25 Sep 2012.

  1. maxfax

    maxfax New Member

    Joined:
    23 Jun 2010
    Messages:
    25
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте, помогите решить проблему, собственно нужно получить hex объекта string.

    Спасибо !
     
  2. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Что подразумевается под фразой "hex объекта string"? Может быть имели ввиду hash объекта string? Или извлечь число в HEX формате из строки?
     
  3. maxfax

    maxfax New Member

    Joined:
    23 Jun 2010
    Messages:
    25
    Likes Received:
    0
    Reputations:
    0
    строку в байты перегнать
     
  4. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    задача непонятно сформулирована. посему все что я могу предложить:

    Code:
    #include <iostream>
    #include <string>
    
    int main()
    {
    	std::string str = "hello";
    
    	for(auto s : str)
    		std::cout << std::hex << static_cast<int>(s) << ' ';
    }
    а что куда перегонять уже сам решай.
     
  5. GRRRL Power

    GRRRL Power Elder - Старейшина

    Joined:
    13 Jul 2010
    Messages:
    823
    Likes Received:
    185
    Reputations:
    84
    Наверно, скорее так

    Code:
    #include <iostream>
    #include <string>
    
    int main()
    {
    	std::string str = "hello";
    
    	for(auto s : str)
    		std::cout << std::hex << static_cast<int>(static_cast<unsigned char>(s)) << ' ';
    }
    А то если в строке окажутся байты больше 127, они превратятся в отрицательные инты и получится что-то вроде 0xffffffc2 на выходе.