-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.uni-
stuttgart.de!news.k-dsl.de!border2.nntp.ams2.giganews.com!border2.nntp.ams.giga
news.com!nntp.giganews.com!feeder2.cambriumusenet.nl!feeder1.cambriumusenet.nl!
feed.tweaknews.nl!209.197.12.242.MISMATCH!nx01.iad01.newshosting.com!newshostin
g.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neos
trada.pl!news.neostrada.pl.POSTED!not-for-mail
Newsgroups: pl.comp.programming
Followup-To: pl.comp.programming
From: "Bronek (bryx) Tatukl" <b...@k...com>
Subject: jak zamienić string na hex?
Date: Tue, 06 Jul 2010 09:49:46 +0200
Organization: Niezależna Samorządna Grupa Leni
User-Agent: KNode/0.99.01
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-2"
Content-Transfer-Encoding: 8Bit
Lines: 50
Message-ID: <4c32dfc5$0$19170$65785112@news.neostrada.pl>
NNTP-Posting-Host: 83.24.166.101
X-Trace: 1278402504 unt-rea-a-01.news.neostrada.pl 19170 83.24.166.101:39701
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.comp.programming:185966
X-Original-Bytes: 1976
[ ukryj 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
- Alg. kompresji LZW
- 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??
Najnowsze wątki
- 2025-03-08 Cięcie wysokich tui
- 2025-03-08 Środa Wielkopolska => SAP FI/CO Konsultant wewnętrzny <=
- 2025-03-08 Prawo "gminne"
- 2025-03-08 Warszawa => Senior Recruiter <=
- 2025-03-08 Warszawa => Key Account Manager IT <=
- 2025-03-08 Najszybciej ładujące się samochody elektryczne
- 2025-03-07 AION przejety
- 2025-03-07 Warszawa => Data Engineer (Tech Leader) <=
- 2025-03-07 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-03-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-03-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-03-07 Chiny-Kraków => Senior PHP Symfony Developer <=
- 2025-03-07 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-07 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS