Discussion:
Zamiana liczby 10 na hex
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Pavlos
2004-01-21 14:50:58 UTC
Permalink
Czesc. Mam pytanie moze smieszne dla was. Nie znam C ale chcialem sie
dowiedziec jak zamienic liczbe dziesietna na liczbe w kodzie szesnastkowym.
Dzieki za odpowiedz.
Maciek K.
2004-01-21 14:57:10 UTC
Permalink
Post by Pavlos
Czesc. Mam pytanie moze smieszne dla was. Nie znam C ale chcialem sie
dowiedziec jak zamienic liczbe dziesietna na liczbe w kodzie szesnastkowym.
Dzieki za odpowiedz.
chodzi oczywiscie o ciag :)

int x = 123; // dziesietnie 123
char ciag[ 32 ]; // tu wyladuje ciag wynikowa
sprintf ( ciag, "%x", x );



pozdro
Maciek K.
2004-01-21 15:00:32 UTC
Permalink
Post by Maciek K.
Post by Pavlos
Czesc. Mam pytanie moze smieszne dla was. Nie znam C ale chcialem sie
dowiedziec jak zamienic liczbe dziesietna na liczbe w kodzie
szesnastkowym.
Dzieki za odpowiedz.
chodzi oczywiscie o ciag :)
int x = 123; // dziesietnie 123
char ciag[ 32 ]; // tu wyladuje ciag wynikowa
sprintf ( ciag, "%x", x );
pozdro
A jesli i tamta jest ciagiem to tak :

char dec[] = "123";
char hex[32];
sprintf ( hex, "%x", atoi(dec) );

pozdro
Pavlos
2004-01-21 15:12:54 UTC
Permalink
Chodzi mi o to ze mam obliczona liczbe dziesietna i chce ja zamienic na
liczbe w kodzie szesnastkowym i zeby ja wyswietlilo na ekranie. Dzieki za
odpowiedz
Marcin 'Qrczak' Kowalczyk
2004-01-21 16:04:32 UTC
Permalink
Post by Pavlos
Chodzi mi o to ze mam obliczona liczbe dziesietna i chce ja zamienic na
liczbe w kodzie szesnastkowym i zeby ja wyswietlilo na ekranie.
Jeśli masz ją obliczoną w typie int, to ona wcale nie jest dziesiętna.
Jest liczbą, a nie tekstem liczby. To, jak ją wyświetlisz, dziesiętnie
czy szesnastkowo czy inaczej, zależy od sposobu wyświetlania. Liczba
jako taka jest najwyżej binarna, ale to szczegół techniczny - z punktu
widzenia programisty jest po prostu liczbą.

W C dziesiętnie wyświetla się tak: printf("%d", liczba);
a szesnastkowo tak: printf("%x", liczba);
--
__("< Marcin Kowalczyk
\__/ ***@knm.org.pl
^^ http://qrnik.knm.org.pl/~qrczak/
Pavlos
2004-01-21 16:33:07 UTC
Permalink
Mam taki problem bo obliczam liczbęi jest to czas. I chce teraz ją wpisać
do licznika jako liczbe szesnastkową żeby licznik odmierzał ten czas i
dlatego chce znać wartość tego czasu w postaci szesnastkowej żeby go wpisać
do licznika.Pisze program do symulatora procesora i chcę wykorzystać licznik
tego procesora do odmierzenia zwłoki czasowej. Dzięki za odpowiedź
technolust
2004-01-21 17:14:59 UTC
Permalink
Post by Pavlos
Mam taki problem bo obliczam liczbęi jest to czas. I chce teraz ją wpisać
do licznika jako liczbe szesnastkową żeby licznik odmierzał ten czas i
dlatego chce znać wartość tego czasu w postaci szesnastkowej żeby go wpisać
do licznika.Pisze program do symulatora procesora i chcę wykorzystać licznik
tego procesora do odmierzenia zwłoki czasowej. Dzięki za odpowiedź
kurczak juz ci odpowiedzial
--
technolust <tomicki(at)o2(dot)pl>

"Don't hold strong opinions about things you don't understand"
Pavlos
2004-01-21 17:36:51 UTC
Permalink
Aha rozumiem. Ta liczba jest obliczona tylko czy jak zadam zeby wpisal ją do
tego licznika który wymaga liczby szesnastkowej to on wpisze ją jako
szesnastkowa?
Marcin 'Qrczak' Kowalczyk
2004-01-21 20:29:49 UTC
Permalink
Post by Pavlos
Mam taki problem bo obliczam liczbęi jest to czas. I chce teraz ją wpisać
do licznika jako liczbe szesnastkową żeby licznik odmierzał ten czas i
dlatego chce znać wartość tego czasu w postaci szesnastkowej żeby go wpisać
do licznika.
Postać szesnastkowa jest cechą sposobu wypisywania liczby, a nie cechą
liczby. Mylisz pojęcia.
--
__("< Marcin Kowalczyk
\__/ ***@knm.org.pl
^^ http://qrnik.knm.org.pl/~qrczak/
_Jarek_
2004-01-22 09:07:52 UTC
Permalink
Post by Marcin 'Qrczak' Kowalczyk
Post by Pavlos
Mam taki problem bo obliczam liczbęi jest to czas. I chce teraz ją wpisać
do licznika jako liczbe szesnastkową żeby licznik odmierzał ten czas i
dlatego chce znać wartość tego czasu w postaci szesnastkowej żeby go wpisać
do licznika.
Postać szesnastkowa jest cechą sposobu wypisywania liczby, a nie cechą
liczby. Mylisz pojęcia.
Dajcie mu spokuj sam musi się przekonać, jeżeli chcesz liczbe zmienic na
napis użyj "itoa"
Opis : Konwertuje liczbę całkowitą na łańcuch tekstowy
Składnia : char *itoa (int x, char *str, int p);
x : liczbę całkowita do konwersji
str : wskaźnik na łańcuch tekstowy po konwersji
p : system wyliczania (dwójkowy, ósemkowy, dziesiętny, szesnastkowy)
Przykład : char *str=itoa (x, buf, 10);
Plik nagłówkowy : < stdlib.h >
Wartość zwracana : wskaźnik na łańcuch tekstowy po konwersji
Marcin 'Qrczak' Kowalczyk
2004-01-22 09:15:19 UTC
Permalink
Post by _Jarek_
Dajcie mu spokuj sam musi się przekonać, jeżeli chcesz liczbe zmienic na
napis użyj "itoa"
Nie ma takiej funkcji (jest tylko w niektórych DOSowo-Windowsowych
kompilatorach). Użyj sprintf, która jest wszędzie.
--
__("< Marcin Kowalczyk
\__/ ***@knm.org.pl
^^ http://qrnik.knm.org.pl/~qrczak/
Pavlos
2004-01-22 10:07:15 UTC
Permalink
Dziękuję Panowie już sobie poradziłem :):)
_Jarek_
2004-01-22 10:56:51 UTC
Permalink
Post by Marcin 'Qrczak' Kowalczyk
Post by _Jarek_
Dajcie mu spokuj sam musi się przekonać, jeżeli chcesz liczbe zmienic na
napis użyj "itoa"
Nie ma takiej funkcji (jest tylko w niektórych DOSowo-Windowsowych
kompilatorach). Użyj sprintf, która jest wszędzie.
A tak tak słuchaj się Qrczaka to wyjdziesz na ludzi.
Bo ta funkcja jest zdefiniowana w standardzie C.
Marcin 'Qrczak' Kowalczyk
2004-01-22 11:25:09 UTC
Permalink
Post by _Jarek_
Post by Marcin 'Qrczak' Kowalczyk
Post by _Jarek_
Dajcie mu spokuj sam musi się przekonać, jeżeli chcesz liczbe zmienic na
napis użyj "itoa"
Nie ma takiej funkcji (jest tylko w niektórych DOSowo-Windowsowych
kompilatorach). Użyj sprintf, która jest wszędzie.
A tak tak słuchaj się Qrczaka to wyjdziesz na ludzi.
Bo ta funkcja jest zdefiniowana w standardzie C.
Nie jest.
--
__("< Marcin Kowalczyk
\__/ ***@knm.org.pl
^^ http://qrnik.knm.org.pl/~qrczak/
_Jarek_
2004-01-22 15:53:43 UTC
Permalink
Post by Marcin 'Qrczak' Kowalczyk
Post by _Jarek_
Post by Marcin 'Qrczak' Kowalczyk
Post by _Jarek_
Dajcie mu spokuj sam musi się przekonać, jeżeli chcesz liczbe zmienic na
napis użyj "itoa"
Nie ma takiej funkcji (jest tylko w niektórych DOSowo-Windowsowych
kompilatorach). Użyj sprintf, która jest wszędzie.
A tak tak słuchaj się Qrczaka to wyjdziesz na ludzi.
Bo ta funkcja jest zdefiniowana w standardzie C.
Nie jest.
a " _itoa" też nie jest.
Janek
2004-01-22 16:22:00 UTC
Permalink
Post by _Jarek_
Post by Marcin 'Qrczak' Kowalczyk
Post by _Jarek_
napis użyj "itoa"
Nie ma takiej funkcji (jest tylko w niektórych DOSowo-Windowsowych
kompilatorach). Użyj sprintf, która jest wszędzie.
A tak tak słuchaj się Qrczaka to wyjdziesz na ludzi.
Bo ta funkcja jest zdefiniowana w standardzie C.
W standardzie C? Chyba sie koledze z "atoi" pomylilo.
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
tomasz golec
2004-01-22 11:14:16 UTC
Permalink
Post by Maciek K.
Post by Pavlos
Czesc. Mam pytanie moze smieszne dla was. Nie znam C ale chcialem sie
dowiedziec jak zamienic liczbe dziesietna na liczbe w kodzie
szesnastkowym.
Post by Maciek K.
Post by Pavlos
Dzieki za odpowiedz.
chodzi oczywiscie o ciag :)
int x = 123; // dziesietnie 123
char ciag[ 32 ]; // tu wyladuje ciag wynikowa
sprintf ( ciag, "%x", x );
pozdro
a ja jestem ciekaw czy to nie bylo na zaliczenie :)
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Loading...