Gå til innhold

ASCII to HEX converter C++


Anbefalte innlegg

Hei, som tittel har dere sikkert gjett hva mitt problem gjelder.?

Hvis ikke kan jeg si så mye som at problemet mitt kan bli definert som

manglende kunnskaper hos meg innen c++. Jeg har da en string eks.

 

string mystr;/int I;

cin >> mystr/i

 

Denne stringen ville jeg gjerne hatt "omformulert" til hex.

Er dette mulig hvis ikke er det andre måter jeg kan gjøre det på`?

På forhånd tusen takk for hjelpen.

Lenke til kommentar
Videoannonse
Annonse

hum, noe slikt?

 

#include <iostream>

using namespace std;

int main()
{
 string s = "Hello World";
 for(string::size_type i = 0; i < s.length(); i++)
   cout << hex << static_cast<int>(s[i]) << " ";
 cout << endl;
 return 0;
}

 

lars@ibmr52:~/programming/c$ g++ -g -Wall string-to-hex-values.cpp -o string-to-hex-values && ./string-to-hex-values

48 65 6c 6c 6f 20 57 6f 72 6c 64

Endret av lnostdal
Lenke til kommentar
hum, noe slikt?

 

#include <iostream>

using namespace std;

int main()
{
 string s = "Hello World";
 for(string::size_type i = 0; i < s.length(); i++)
   cout << hex << static_cast<int>(s[i]) << " ";
 cout << endl;
 return 0;
}

 

lars@ibmr52:~/programming/c$ g++ -g -Wall string-to-hex-values.cpp -o string-to-hex-values && ./string-to-hex-values

48 65 6c 6c 6f 20 57 6f 72 6c 64

6720564[/snapback]

 

Det funket utmerket :thumbup: Takk. :D

Nå må jeg bare finne ut hvordan det fungerer og lære meg det.

For jeg må nok innrømme at jeg ikke skjønte så mye av det. Hvis du kunne beskrive for meg hva de forskjellige tinga gjorde hadde det vært "toppers"!

 

JA og så var det en liten ting, jeg la string inn i en cin. Slik at jeg kunne skrive inn hva som skulle være der. Men når jeg skreiv noe med mellom rom. Så tok den bare det første ordet transformerte det til hex. Er det noe som jeg har gjort feil eller hva er problemet`?

Endret av cookiefi
Lenke til kommentar

#include <iostream>

using namespace std;

int main()
{
 string s;
 getline(cin, s);
 for(string::size_type i = 0; i < s.length(); i++)
   cout << hex << static_cast<int>(s[i]) << " ";
 cout << endl;
 return 0;
}

 

lars@ibmr52:~/programming/c$ g++ -g -Wall string-to-hex-values.cpp -o string-to-hex-values && ./string-to-hex-values

Dette er en test

44 65 74 74 65 20 65 72 20 65 6e 20 74 65 73 74

 

http://www.cppreference.com/cppstring/index.html

http://www.cppreference.com/io_flags.html#format_flags

 

Om du ikke har noen konkrete spørsmål gidder jeg ikke forklare det her da det er basic stuff; google etter "Thinking in C++" så ser du selv. :)

 

edit:

Samme i Lisp, siden jeg er et Off Topic trollende rasshøl med alt for mye fritid .. vel, óg fordi jeg synes Lisp er morro:

cl-user> (map 'list (lambda (ch)
                      (format nil "~X" (char-code ch)))
              "Dette er en test")
("44" "65" "74" "74" "65" "20" "65" "72" "20" "65" "6E" "20" "74" "65" "73" "74")

 

..indenteringa på møkkaforumet er offbeat igjen btw..

Endret av lnostdal
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...