cookiefi Skrevet 21. august 2006 Del Skrevet 21. august 2006 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
Giddion Skrevet 21. august 2006 Del Skrevet 21. august 2006 Du kan med litt omformulering bruke Printf type funksjoner med Type Field Character X eller x (ABCDEF eller abcdef) Lykke til Lenke til kommentar
lnostdal Skrevet 21. august 2006 Del Skrevet 21. august 2006 (endret) 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-values48 65 6c 6c 6f 20 57 6f 72 6c 64 Endret 21. august 2006 av lnostdal Lenke til kommentar
cookiefi Skrevet 22. august 2006 Forfatter Del Skrevet 22. august 2006 (endret) Skrev noe tull, skulle gjerne ha slettet denne her. Endret 22. august 2006 av cookiefi Lenke til kommentar
cookiefi Skrevet 22. august 2006 Forfatter Del Skrevet 22. august 2006 (endret) 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-values48 65 6c 6c 6f 20 57 6f 72 6c 64 6720564[/snapback] Det funket utmerket Takk. 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 22. august 2006 av cookiefi Lenke til kommentar
lnostdal Skrevet 22. august 2006 Del Skrevet 22. august 2006 (endret) #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-valuesDette 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 22. august 2006 av lnostdal Lenke til kommentar
Dead_Rabbit Skrevet 22. august 2006 Del Skrevet 22. august 2006 std::cin::operator>> leser inn ord separert med whitespace. Om du ønsker å lese inn mer, kan du bruke std::getline. Denne leser en hel linje av gangen, og lagrer den i en std::string: http://www.cppreference.com/cppstring/getline.html Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå