-
Data: 2010-07-06 07:49:46
Temat: jak zamienić string na hex?
Od: "Bronek (bryx) Tatukl" <b...@k...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Napisałem na kolanie program do zamiany stringa na hex i niestety okazalo
się, że zawiera błędy. Nie mam pojęcia gdzie może tkwić błąd.
$./a.out ą
strlen() [2]
wyszlo mi 2, [ffffffff85]
$./a.out ąc
strlen() [3]
wyszlo mi 3, [ffff63]
Dlaczego wyniki sa rózne? Jeśli mój terminal działa w Utf-8 to ą powinno
zawierać 2 znaki char. Jeśli jakoś inaczej to drugie wywołanie powinno być
dłuższe niż pierwsze bo zawiera 2 znaki. Ktoś ma pomysł jak to poprawić?
_____________________________
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc,char *argv[])
{
char *a,*b;
int i,len;
len = strlen( argv[1] );
printf("strlen() [%d]\n",len);
len=0;
for(len = 0; argv[1][len] != '\0' ;len++ ) { }
a=malloc( ( (2*len) +1 ) * sizeof(char) );
b=a;
for(i = 0; i < len ;i++ )
{
sprintf(a, "%02x", argv[1][i]);
a += 2;
}
a = '\0';
printf("wyszlo mi %d, [%s]\n",len,b);
free(b);
return 0;
}
Następne wpisy z tego wątku
- 06.07.10 09:37 Grzegorz Niemirowski
- 06.07.10 18:18 Bronek (bryx) Tatukl
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-09 Zapierdalać
- 2025-01-09 Wróblewo => Specjalista ds. Analiz Finansowych <=
- 2025-01-09 Kraków => iOS Developer (Swift) <=
- 2025-01-09 Dell ubija / przemianowuje swoje flagowe linie laptopów
- 2025-01-08 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-08 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-08 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-08 Katowice => Key Account Manager (ERP) <=
- 2025-01-08 Warszawa => Programista Full Stack .Net <=
- 2025-01-08 Podłączenie DMA 8257 do 8085
- 2025-01-08 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-01-08 Warszawa => Solution Architect (Java background) <=
- 2025-01-08 Wrocław => Application Security Engineer <=
- 2025-01-08 Warszawa => International Freight Forwarder <=
- 2025-01-08 Mińsk Mazowiecki => Area Sales Manager OZE <=