Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    123

    [vb] & c++ Credo......Aiuto...URGENTE

    Vorrei sapere se queste istruzioni sono in c++ o in un altro linguaggio, dovrebbero essere funzioni per convertile file.txt in formato .dop
    in qualsiasi linguaggio sono, e' possibile ottenere la stessa cosa con vb?

    Queste sono le funzioni che operano la conversione
    ======================




    /* IEEE floating point format to Microsoft Basic floating point format
    */
    int fieee2msbin(float *src, float *dst) {
    union {
    float a;
    u_long b;
    } c;
    u_short man;
    u_short exp;

    c.a = *src;
    if (c.b) { /* not zero */
    man = c.b >> 16;
    exp = ((man << 1) & 0xff00) + 0x0200;
    if (exp & 0x8000 != (man << 1) & 0x8000)
    return 1; /* exponent overflow */
    man = man & 0x7f | (man >> 8) & 0x80; /*
    move sign */
    man |= exp;
    c.b = c.b & 0xffff | (long)man << 16;
    }
    *dst = c.a;
    return 0;
    }

    /* Microsoft Basic floating point format to IEEE floating point format
    */
    int fmsbin2ieee(float *src, float *dst) {
    union {
    float a;
    u_long b;
    } c;
    u_short man;
    u_short exp;

    c.a = *src;
    if (c.b) { /* not zero */
    man = c.b >> 16;
    exp = (man & 0xff00) - 0x0200;
    if (exp & 0x8000 != man & 0x8000)
    return 1; /* exponent overflow */
    man = man & 0x7f | (man << 8) & 0x8000; /*
    move sign */
    man |= exp >> 1;
    c.b = c.b & 0xffff | (long)man << 16;
    }
    *dst = c.a;
    return 0;
    }



    Vi prego aiutatemi

  2. #2
    Utente bannato
    Registrato dal
    Sep 2001
    Messaggi
    413
    C o C++

    dalla sintassi mi pare così...

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    123
    ma che cosa vuol dire ammesso che sia c?
    Ditemelo almeno a parole, cosi' poi me lo traduco io in vb

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    167

    Re: [vb] & c++ Credo......Aiuto...URGENTE

    Allora, vediamo un po'. Mi sembra che non parli di traduzione di file da un formato a un altro ma di "traduzioni" di numeri da un formato a un altro (dal floating point di IEEE a quello di Microsoft Basic).
    Il linguaggio è C++.

    La prima funzione riceve 2 argomenti ( 2 puntatori a float, src e dst, un puntatore è una variabile che contiene un indirizzo di memoria) e restituisce un intero (int fiee(....).
    Poi viene dichiarata una union (una locazione di memoria condivisa da due o più variabili diverse) chiamata c. Per accedere ai dati di una union si usa la sintassi c.a (in questo caso ad esempio c'è l'istruzione successiva c.a=*src).

    if(c.b) = viene eseguito il codice nella parentesi graffa successiva se c.b è vero, cioè se è diverso da 0.

    Poi c'è scritto >> che non fa parte della sintassi C o C++.
    Ipotizzo che il codice sia stato preso da una pagina HTML(XML, insomma da Web e quindi >> viene tradotto in >> che in C++ rappresenta l'operatore di shift per i bit. In questo caso è l'operatore di shift a destra che fa spostare di un posto a destra tutti i bit della variabile mettendo uno 0 sulla sinistra).

    La stessa traduzione viene effettuata per &amp; ( tradotto in &, l'operatore AND bit per bit in C++), per &lt;&lt; tradotto in << (shift a sinistra)

    La barra | indica l'operatore OR: l'istruzione
    man |= exp;
    è una forma contratta di man = (man | exp).
    I numeri tipo 0x8000 sono scritti in esadecimale.
    Il simbolo != sta per diverso ( <> in VB )
    Passare il puntatore di una variabile a una funzione in C++ si può paragonare a passarla by ref in VB.
    Scrivere (long)man significa fare un cast di man, che er un u_short e il suo valore viene convertito in long (il clng(variabile) di VB).

    Tutto il codice compreso tra i simboli /* e */ è commento ( se il commento è su una linea può essere preceduto da //.

    Con un po' di tempo è traduciblissimo in VB.
    .................................



    ciao.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    123

    Grazie

    Ti ringrazio tantissimo Level!!!
    Ti prego, aiutami a tradurlo in due funzioni di vb6!
    Te ne sarei molto riconoscente!!
    Se puo' aiutarti io ho anche i due file, il txt e anche il file che che e' il risultato della traduzione dei valori che ci sono sul txt.
    Se possono servire te li posso mandare o mettere anche sul forum, dimmi un po' tu!!!

    2 domande sceme:
    Non sara' mica possibile richiamare queste funzioni da vb?
    E se si creasse una libreria in c e le si passassero i valori da vb6?

    p.s. Purtroppo anche se volessi imparare il c non saprei neanche da dove inziare.


    Grazie ancora

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.