Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: [C] Tipi di dato

  1. #1

    [C] Tipi di dato

    Piccola richiesta:

    io ho un vettore di char vuoto, e lo devo riempire con dei valori scritti su un file in esadecimale,
    leggerli tutti non è un problema, il problema credo che sia il fatto di conversione da esadecimale a char, i valori che ci sono all'interno dopo l'inserimento non corrispondono. provando a mettere il vettore come unsigned int funziona. il vettore DEVE essere char, c'è una maniera per farlo?

  2. #2

    Re: [C] Tipi di dato

    Originariamente inviato da Guitar_joker87
    Piccola richiesta:

    io ho un vettore di char vuoto, e lo devo riempire con dei valori scritti su un file in esadecimale,
    leggerli tutti non è un problema, il problema credo che sia il fatto di conversione da esadecimale a char, i valori che ci sono all'interno dopo l'inserimento non corrispondono. provando a mettere il vettore come unsigned int funziona. il vettore DEVE essere char, c'è una maniera per farlo?
    Suppongo tu legga valori del tipo 0xFFFF che indicano valori su due byte quindi con gli unsigned int funziona perche appunto sono rappresentati con due byte. Se vuoi rappresentarli con i char, che occupano solo 1 byte, devi riscalare i valori con opportuni offset e in seguito fare degli scalamenti.

  3. #3
    questa è una riga d'esempio:

    66 42 80 c1 05 66

    questi sono numeri esadecimali ma stanno nel range 0,255 quindi non potrei salvarli in un char?

  4. #4
    Originariamente inviato da Guitar_joker87
    questa è una riga d'esempio:

    66 42 80 c1 05 66

    questi sono numeri esadecimali ma stanno nel range 0,255 quindi non potrei salvarli in un char?
    ah bhe allora certo che puoi salvarli in un char...facendo opportune mascherature con gli operatori bit a bit

    PS. ma tu come li leggi questi dati?

  5. #5
    come potrei farle??

  6. #6
    Originariamente inviato da Guitar_joker87
    come potrei farle??
    si ma dovresti dire come leggi i dati... cioe in che tipo di variabili li vai a mettere...

  7. #7
    li salvo in una variabile char e poi eguaglio la variabile a il vettore char...ok??

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    156
    se stai parlando di caratteri da 0 a 255, credo che dovresti usare unsigned char e non char.

  9. #9
    devo farlo assolutamente con un vettore d char...

  10. #10
    Originariamente inviato da Guitar_joker87
    devo farlo assolutamente con un vettore d char...
    #include <stdio.h>
    #include <stdlib.h>

    Ecco qui, anche se zuccino aveva ragione...

    Codice PHP:

    int main
    ()

    {
      
    int pippo;
    char PrimoValoreHEX,SecondoValoreHEX,Carattere;

    /* Esempio, valore 0x42, equivalente all 'B'*/

    PrimoValoreHEX=4;
    SecondoValoreHEX=2;
    Carattere=Carattere|SecondoValoreHEX;
    Carattere=Carattere|(PrimoValoreHEX<<4);

    printf("%c\n\n",Carattere);
    system("pause");

      
      




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.