misterx
21-05-2012, 20:55
ciao,
non so se vi è mai capitato di risolvere un problema di tale genere.
Ho un certo numero di PC, ognuno col suo indirizzo IP.
Mi devo connettere a tali PC e leggere alcuni indirizzi di input output e per ogni inout outpu è associata una sigla univoca. Per far meglio comprendere ho un file così strutturato:
192.168.10.50, RP1, I20.1
192.168.10.50, RP1, I20.2
192.168.10.50, RP1, I20.3
192.168.10.50, RP1, I20.4
.....
192.168.10.50, RP1, O20.1
192.168.10.50, RP1, O20.2
192.168.10.50, RP1, O20.3
192.168.10.50, RP1, O20.4
....
192.168.10.51, RP1, I20.1
etc....
Il programma deve:
a) aprire una connessione con la scheda 192.168.10.50
b) usando una opportuna funzione leggere un certo numero di byte di input e metterli in un buffer
c) tale buffer deve essere poi ciclato byte a byte per capire se i bit di ogni byte hanno cambiato il loro stato da 0 a 1 e viceversa
d) usando ancora la funzione opportuna legere gli output
e) ciclare nuovamente il buffer per capire se i bit sono cambiati e così via
Il problema è che per ogni indirizzo IP il numero degli ingressi (I) delle uscite (O) è variabile; ho provato ad usare un certo numero di array ma all'aumentare nel numero degli indirizzi IP il programma diventa ingestibile; quale struttura dati è ottimale in un caso di questo tipo?
grazie
non so se vi è mai capitato di risolvere un problema di tale genere.
Ho un certo numero di PC, ognuno col suo indirizzo IP.
Mi devo connettere a tali PC e leggere alcuni indirizzi di input output e per ogni inout outpu è associata una sigla univoca. Per far meglio comprendere ho un file così strutturato:
192.168.10.50, RP1, I20.1
192.168.10.50, RP1, I20.2
192.168.10.50, RP1, I20.3
192.168.10.50, RP1, I20.4
.....
192.168.10.50, RP1, O20.1
192.168.10.50, RP1, O20.2
192.168.10.50, RP1, O20.3
192.168.10.50, RP1, O20.4
....
192.168.10.51, RP1, I20.1
etc....
Il programma deve:
a) aprire una connessione con la scheda 192.168.10.50
b) usando una opportuna funzione leggere un certo numero di byte di input e metterli in un buffer
c) tale buffer deve essere poi ciclato byte a byte per capire se i bit di ogni byte hanno cambiato il loro stato da 0 a 1 e viceversa
d) usando ancora la funzione opportuna legere gli output
e) ciclare nuovamente il buffer per capire se i bit sono cambiati e così via
Il problema è che per ogni indirizzo IP il numero degli ingressi (I) delle uscite (O) è variabile; ho provato ad usare un certo numero di array ma all'aumentare nel numero degli indirizzi IP il programma diventa ingestibile; quale struttura dati è ottimale in un caso di questo tipo?
grazie