eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingjak zamienić string na hex?jak zamienić string na hex?
  • 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;
    }


Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: