|
|
||||||
|
#1
|
|
|
|
|
Salve,
ho un oggetto dword (nello specifico un indirizzo ip preso da un campo di testo ip). Ho visto nella guida che i 4 valori dell'indirizzo vengono salvati in 4 locazioni consecutive di memoria e vanno a comporre un oggetto dword... a me servirebbero i 4 numeri presi singolarmente... come faccio? Ho provato con un puntatore all'oggetto dword, e quello che ottengo è che ovviamente anche andando ad utilizzare l'aritmetica dei puntatori *(p+1) ad esempio, mi sposto di 4 locazioni, essendo un puntatore a dword... Suggerimenti? Grazie |
|
|
|
#2
|
|
|
|
|
"XplodR" <NO-SPAM-2-xplodr> wrote in message
news:3223 > Salve, > ho un oggetto dword (nello specifico un indirizzo ip preso da un campo di > testo ip). > Ho visto nella guida che i 4 valori dell'indirizzo vengono salvati in 4 > locazioni consecutive di memoria e vanno a comporre un oggetto dword... > a me servirebbero i 4 numeri presi singolarmente... come faccio? > Ho provato con un puntatore all'oggetto dword, e quello che ottengo è che > ovviamente anche andando ad utilizzare l'aritmetica dei puntatori *(p+1) ad > esempio, mi sposto di 4 locazioni, essendo un puntatore a dword... > Ogni numero e' lungo un BYTE, quindi dovresti utilizzare un puntatore a questo tipo di dato e non un puntatore a DWORD, BYTE * p = (BYTE*) ipAddr; *p, *(p+1), *(p+2), *(p+3) saranno i 4 byte di cui hai bisogno. Semplice no? |
|
#3
|
|
|
|
|
> Ogni numero e' lungo un BYTE, quindi dovresti utilizzare un puntatore a
> questo tipo di dato e non un puntatore a DWORD, > BYTE * p = (BYTE*) ipAddr; > > *p, *(p+1), *(p+2), *(p+3) saranno i 4 byte di cui hai bisogno. > > Semplice no? Grazie per l'informazione, ho provato ma non funziona, si impalla il programma... Il fatto è che per adesso mi servirebbe copiare il primo numero dell'IP dalla casella dell'IP ad una editbox... La variabile associata alla casella IP è del tipo DWORD valoreip mentre quella dell'editbox è di tipo int valoreid (ho già provato a mettere al posto di int __int64, long int, unsigned long ma il problema persiste...) Grazie a chiunque vorrà aiutarmi a questo punto... |
|
#4
|
|
|
|
|
XplodR ha scritto:
> Grazie per l'informazione, > ho provato ma non funziona, si impalla il programma... > Il fatto è che per adesso mi servirebbe copiare il primo numero dell'IP > dalla casella dell'IP ad una editbox... > La variabile associata alla casella IP è del tipo > DWORD valoreip > mentre quella dell'editbox è di tipo > int valoreid > (ho già provato a mettere al posto di int __int64, long int, unsigned long > ma il problema persiste...) Scuate, mi intrometto: a questo punto si tratta semplicemente di assegnare a una variabile int una vraiabile BYTE; dal momento che BYTE occupa 1 byte, e int ne occupa 4, non vedo il problema, no? Perché hai provato __int64??? o_O |
|
#5
|
|
|
|
|
> Scuate, mi intrometto: a questo punto si tratta semplicemente di assegnare
> a una variabile int una vraiabile BYTE; dal momento che BYTE occupa 1 > byte, e int ne occupa 4, non vedo il problema, no? Perché hai provato > __int64??? o_O Non sapevo che pesci prendere :-) Cmq ho provato anche a fare come dici tu (è stato il mio primo tentativo) ma ricevo degli errori e il programma termina non correttamente... Le righe di codice interessate sono [CODE] BYTE* ip0=(BYTE*)valoreip; valoreid=*ip0; [/CODE] valoreip è di tipo DWORD, valoreid è int... |
|
|
| Discussioni simili | |
| Parametri oggetto COM (SafeArray of Byte) Ciao, scusatemi per il continuo post, ma mi sto incasinando :-/ Dopo l'aiuto di SetecAstronomy riguardo il wrapper php://input mi serve una mano con queto problema: i dati... |
|
| Oggetto Buffer as Byte: LENGHT??? Scusate, forse è una domanda troppo idiota... Se io dichiaro dim buffer (1024) as byte quanti caratteri potrò metterci dentro? Secondo quello che ho scoperto sarebbe 3... |
|
| vettore di byte e gestione singoli bit Buongiorno, devo gestire variabili (meglio dei campi) di diverse dimensioni memorizzate in un vettore di byte (unsigned char). Gestire nel senso di estrarle e memorizzarle... |
|
| prendere i byte in parole di 2 byte Salve a tutti. Ho un problema che non so risolvere. Ho bisogno di codificare una sequenza numerica in un'altra sequenza numerica. Mi spiego meglio. Supponiamo di aver... |
|
|
Tutti gli orari sono GMT. Attualmente sono le 23:40. | Privacy Policy
|