Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere)
Quattro modi di indossarlo, stessa app del Plaud Note Pro e integrazione con il desktop. Il registratore IA da indossare di Plaud eccelle in mobilità, ma resta vincolato all'abbonamento ed è facile da perdere
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro
Xiaomi ha portato Redmi Watch 6 anche sul mercato italiano, puntando su un display AMOLED da 2,07 pollici con picco di luminosità a 2000 nit, frame in alluminio da 9,9mm e un'autonomia dichiarata di 12 giorni. Lo smartwatch gira su HyperOS 3 e integra GPS, Bluetooth 5.4 e oltre 150 sport mode. Il tutto a meno di 100 euro
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti
Con 22 tasti, il pulsante 5D, lo Shift Mode e il sensore PixArt 3395 da 26.000 DPI, il nuovo mouse wireless di Mad Catz si rivolge in modo preciso ai giocatori di MMO e RPG. Ma chi conosce già il R.A.T. 8+ ADV si accorgerà subito di quanto i due prodotti condividano, e di dove invece divergono
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-06-2007, 10:00   #1
buddace
Member
 
Iscritto dal: Nov 2002
Messaggi: 257
[C] Liste

sto scrivendo del codice che usa una lista con doppio link (precedente e successivo). Nel caso di rimozione di un elemento intermedio vorrei semplicemente reindirizzare i puntatori degli elementi precedente e successivo.

Codice:
dcc_struct_indice->prev->next=dcc_struct_indice->next;
dcc_struct_indice->next->prev=dcc_struct_indice->prev;
Il compilatore mi dice: error: dereferencing pointer to incomplete type
Anche con le partentesi idem, dove sbaglio ?
__________________
WebMaster di http://www.dccworld.coml'unico sito italiano dedicato interamente ai sistemi di controllo digitale per il modellismo ferroviario.

Ultima modifica di buddace : 19-06-2007 alle 10:25.
buddace è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 10:48   #2
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quell'errore viene generato quando di un puntatore hai a disposizione la dichiarazione "anonima" dell'oggetto puntato, ad es:
struct mystruct;
e non la definizione completa.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 11:00   #3
buddace
Member
 
Iscritto dal: Nov 2002
Messaggi: 257
In un file lista.h ho definito:
Codice:
typedef struct buffer_dcc_struct { 
                    unsigned int dcc_byte1;
                    unsigned int dcc_byte2;
                    struct dcc_struct *next;
                    struct dcc_struct *prev;
                  } dcc_struct;
E nella mia funzione ho definito
Codice:
dcc_struct *dcc_struct_indice,*temp;
__________________
WebMaster di http://www.dccworld.coml'unico sito italiano dedicato interamente ai sistemi di controllo digitale per il modellismo ferroviario.
buddace è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 11:00   #4
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
...e la struct dcc_struct la definisci dove?
(hint: cambia la definizione di *prev e *next come struct buffer_dcc_struct)
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 11:19   #5
buddace
Member
 
Iscritto dal: Nov 2002
Messaggi: 257
Quote:
Originariamente inviato da ilsensine Guarda i messaggi
...e la struct dcc_struct la definisci dove?
(hint: cambia la definizione di *prev e *next come struct buffer_dcc_struct)
Grazie per l'aiuto effettivametne oltre a sparire il messaggio di errore sono spariti anche una serie di messaggi di warning !
__________________
WebMaster di http://www.dccworld.coml'unico sito italiano dedicato interamente ai sistemi di controllo digitale per il modellismo ferroviario.
buddace è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 13:08   #6
buddace
Member
 
Iscritto dal: Nov 2002
Messaggi: 257
Riferita alla lista di prima, è giusta la sequente funzione ? Mi torna sempre 0.
Codice:
dcc_struct *newslot(void)
{
    return (struct buffer_dcc_struct *)malloc(sizeof(struct buffer_dcc_struct));
}
__________________
WebMaster di http://www.dccworld.coml'unico sito italiano dedicato interamente ai sistemi di controllo digitale per il modellismo ferroviario.

Ultima modifica di buddace : 19-06-2007 alle 13:14.
buddace è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 13:38   #7
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
E' giusta e non può ritornare NULL.

Nota che "struct buffer_dcc_struct" è necessario solo per dichiarare prev e next, in qualsiasi altra parte puoi usare il typedef dcc_struct.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 13:48   #8
buddace
Member
 
Iscritto dal: Nov 2002
Messaggi: 257
La funzione mi ritorna sempre 0 no NULL non vorrei che sia un problema delle librerie che sto usando.
__________________
WebMaster di http://www.dccworld.coml'unico sito italiano dedicato interamente ai sistemi di controllo digitale per il modellismo ferroviario.
buddace è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 14:10   #9
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da buddace Guarda i messaggi
La funzione mi ritorna sempre 0 no NULL
NULL corrisponde a (void *) 0
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Plaud NotePin S, il registratore IA si fa indossabile (ma è facile da perdere) Plaud NotePin S, il registratore IA si fa indoss...
Redmi Watch 6 in prova: lo smartwatch con ampio display da 2000 nit a meno di 100 euro Redmi Watch 6 in prova: lo smartwatch con ampio ...
Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ADV, ma con molti più pulsanti Mad Catz M.M.O. 7+: lo stesso DNA del R.A.T. 8+ ...
Radeon RX 9070 GRE, AMD la porta in tutto il mondo | Recensione Gigabyte Gaming OC Radeon RX 9070 GRE, AMD la porta in tutto il mon...
Reolink OMVI 3i WiFi: videosorveglianza più intelligente e facile da usare Reolink OMVI 3i WiFi: videosorveglianza pi&ugrav...
Samsung Galaxy S27 Pro: sarà lui ...
Così Google ha ottimizzato Chrome...
Xiaomi non cambia idea: il display poste...
LG presenta in Italia le gamme TV Micro ...
Sette anni dopo l'annuncio, The Wolf Amo...
'Non avrete aumenti': la decisione shock...
TIM lancia il Pass Mondiali DAZN: 104 pa...
Tesla Roadster, promessa o miraggio? La ...
Mark Hamilton, la tavola periodica del m...
Hanger 13 annuncia Uomo d'Onore: espansi...
La battaglia delle HBM4 entra nel vivo: ...
Dopo 12 anni torna Alien: Isolation. Ecc...
ADATA Trusta ridurrà i costi di i...
SpaceX fornirà 110.000 GPU NVIDIA...
Hyundai IONIQ 6 N-Line, prova in antepri...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:48.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v