Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [C] Conversione da Esadecimale a char

    Ciao,
    mi servirebbe un'informazione.

    Esiste in C una funzione che converte da eesadecimale a char?



    grazie ciao

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304
    In che senso?
    Un carattere lo puoi esprimere con che base vuoi... decimale, esadecimale, ottale, binario...
    codice:
    printf("%c, %c, %c", 65, 0x41, 0101);
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Ciao,

    quello penso di saperlo. Il fatto è che in questo momento sto programmando un HW.

    Allora ti giro la domando in questo modo: Io avrei la necessità di inviare un carattere terminatore (ctrl+Z = 0x1A) ma non riesco. Io faccio cosi:

    unsigned char* a;
    *a = 0x1A;
    send(a);

    dove send(a) è una funzione che richiede un puntatore ad una stringa.

    Cosi facendo, anzichè mandarmi il caratttere terminatore mi manda una stringa di caratteri incomprensibili

    Grazie ciao

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Quindi non c'entra nulla la conversione; in effetti Lele aveva risposto correttamente ...

    Se la send accetta un puntatore ad una stringa, probabilmente questa non invia solamente il primo carattere ma tutta la stringa puntata. E dato che la stringa viene terminata da uno zero binario, mancando questo terminatore, viene inviato tutto quello che trova dopo il carattere che hai inserito (ovviamente caratteri casuali).

    Devi quindi correggere in questo modo

    unsigned char a[2];
    a[0] = 0x1A;
    a[1] = 0x00;
    send(a);

    A parte il fatto che, ti faccio solo notare, il codice che hai scritto e' errato comunque in quanto non prevede l'allocazione del singolo carattere ...

  5. #5
    Si la conversione non c'entra niente.

    Cmq ho fatto come mi hai detto e funziona correttamente.

    Gentilissimo grazie... Ciao grazie

    Giangi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.