Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Samsung rinnova la serie pieghevole di punta con Galaxy Z Fold8 Ultra: pannello interno da 8 pollici quasi senza piega, cerniera Flex Titanium, Snapdragon 8 Elite Gen 5 for Galaxy e batteria finalmente da 5.000 mAh. Prezzo italiano da 2.299 a 2.899 euro. Tra colorimetro, benchmark reali e giorni di uso quotidiano, ecco dove questo pieghevole convince e dove il nome Ultra fatica ancora a trovare piena giustificazione
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
La nuova Insta360 X6 introduce sensori Sony da 1/1.1" e un SoC Triple AI a 4nm. Analizziamo le riprese 8K, il primo Dolby Vision nativo a 10-bit nel settore sferico e l'innovativo flusso di lavoro diretto sulla futura versione 22 di DaVinci Resolve.
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Dopo due settimane trascorse al volante della Dacia Spring 2026 possiamo raccontarvi tutto, dalle novità di motore e batteria, fino ai consumi in tutti le situazioni, compresa l'autonomia reale ad alta velocità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 31-01-2007, 10:01   #1
alexsimone
Junior Member
 
Iscritto dal: Nov 2006
Messaggi: 6
URGENTE: lista concatenata in C

Ciao a tutti ragazzi, è un bel po' che sto sbattendo per la realizzazione di una lista in C. Innanzitutto nn ho ben capito come funziona e vi sarei grato se qualkuno potesse postarmi un codice esempio, ma cmq anche copiando il codice di una lista che viene proposta sul libro Deitel e Deitel C Corso di prog. il mio compilatore da errore. Uso dev c versione 4 e vi posto il codice:

#include <stdio.h>
#include <stdlib.h>

struct listNode{
char data;
struct listNode *nextPtr;
};

typedef struct listNode ListNode;
typedef ListNode *ListNodePtr;


void insert(ListNodePtr*sPtr, char value);
int isEmpty(ListNodePtr sPtr);
void printList(ListNodePtr currentPtr);
void instructions(void);

int main()
{
ListNodePtr startPtr=NULL;
int choice;
char item;

instructions();
printf("? ");
scanf("%d",&choice);

while(choice!=3){
switch(choice){

case 1:
printf("Enter a characther:");
scanf("\n%c",&item);
insert(&startPtr,item);
printList(startPtr);
break;



default:
printf("invalid choice.\n\n");
instructions();
break;
}
printf("?");
scanf("%d", &choice);
}

printf("End of run.\n");
return 0;
}


void instructions(void)
{
printf("Enter your choice:\n"
" 1 to insert an element into the list.\n"
" 2 to delete an element from the list.\n"
" 3 to end.\n");
}

void insert(ListNodePtr *sPtr, char value)
{
ListNodePtr newPtr;
ListNodePtr previousPtr;
ListNodePtr currentPtr;

newPtr=malloc(sizeof(ListNode));

if(newPtr!=NULL){
newPtr->data=value;
newPtr->nextPtr=NULL;

previousPtr=NULL;
currentPtr=*sPtr;

while(currentPtr!=NULL && value>currentPtr->data){
previousPtr=currentPtr;
currentPtr=currentPtr->nextPtr;
}

if(previousPtr==NULL){
newPtr->nextPtr=*sPtr;
*sPtr=newPtr;
}
else{
previousPtr->nextPtr=newPtr;
newPtr->nextPtr=currentPtr;
}
}
else{
printf("%c not inserted.No memory available.\n",value);
}
}



void printList(ListNodePtr currentPtr);
{
if(currentPtr==NULL){
printf("List is Empty.\n\n");
}
else{
printf("The list is:\n");

while (currentPtr!=NULL){
printf("%c-->",currentPtr->data);
currentPtr=currentPtr->nextPtr;
}
printf("NULL\n\n");
}
}


mi da i seguenti errori:

Compilatore: Default compiler
Esecuzione di g++.exe...
g++.exe "D:\Uniroma\Programmazione 1\lista.cpp" -o "D:\Uniroma\Programmazione 1\lista.exe" -I"C:\Dev-Cpp\include\c++" -I"C:\Dev-Cpp\include\c++\mingw32" -I"C:\Dev-Cpp\include\c++\backward" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
D:/Uniroma/Programmazione 1/lista.cpp: In function `void insert(ListNode**,
char)':
D:/Uniroma/Programmazione 1/lista.cpp:68: invalid conversion from `void*' to `
ListNode*'

D:/Uniroma/Programmazione 1/lista.cpp: At global scope:
D:/Uniroma/Programmazione 1/lista.cpp:99: parse error before `{' token
D:/Uniroma/Programmazione 1/lista.cpp:108: ISO C++ forbids declaration of `
currentPtr' with no type
D:/Uniroma/Programmazione 1/lista.cpp:108: base operand of `->' is not a
pointer
D:/Uniroma/Programmazione 1/lista.cpp:109: parse error before `}' token
D:/Uniroma/Programmazione 1/lista.cpp:110: ISO C++ forbids declaration of `
printf' with no type
D:/Uniroma/Programmazione 1/lista.cpp:110: `int printf' redeclared as different
kind of symbol
C:/Dev-Cpp/include/stdio.h:213: previous declaration of `int printf(const
char*, ...)'
D:/Uniroma/Programmazione 1/lista.cpp:110: invalid conversion from `const char*
' to `int'

D:/Uniroma/Programmazione 1/lista.cpp:111: parse error before `}' token

Esecuzione terminata

Ultima modifica di alexsimone : 31-01-2007 alle 10:33.
alexsimone è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2007, 10:21   #2
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
Ricontrolla quello che hai copiato, vedo diversi errori che non credo tu possa trovare stampati su un libro
__________________
Il sole è giallo
yorkeiser è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2007, 10:31   #3
alexsimone
Junior Member
 
Iscritto dal: Nov 2006
Messaggi: 6
Si , c'era un = in meno in un controllo nella funzione printList ma ora ho corretto e cmq mi da sempre errore
alexsimone è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2007, 11:24   #4
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
Codice:
void printList(ListNodePtr currentPtr);
{
....
Togli il punto e virgola dopo il prototipo

Il resto è giusto e il programma parte, perlomeno compilato col cl Microzozz
__________________
Il sole è giallo
yorkeiser è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2007, 12:51   #5
alexsimone
Junior Member
 
Iscritto dal: Nov 2006
Messaggi: 6
mi da sempre errore

Compilatore: Default compiler
Esecuzione di g++.exe...
g++.exe "D:\Uniroma\Programmazione 1\lista.cpp" -o "D:\Uniroma\Programmazione 1\lista.exe" -I"C:\Dev-Cpp\include\c++" -I"C:\Dev-Cpp\include\c++\mingw32" -I"C:\Dev-Cpp\include\c++\backward" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
D:/Uniroma/Programmazione 1/lista.cpp: In function `void insert(ListNode**,
char)':
D:/Uniroma/Programmazione 1/lista.cpp:68: invalid conversion from `void*' to `
ListNode*'

Esecuzione terminata
alexsimone è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2007, 14:14   #6
yorkeiser
Senior Member
 
L'Avatar di yorkeiser
 
Iscritto dal: Jul 2006
Città: Tristram
Messaggi: 517
Uhm, il cl non lo segnala, comunque suppongo che l'errore sia nel mancato cast sulla malloc

Codice:
newPtr=(ListNode*)malloc(sizeof(ListNode));
__________________
Il sole è giallo
yorkeiser è offline   Rispondi citando il messaggio o parte di esso
Old 31-01-2007, 14:27   #7
alexsimone
Junior Member
 
Iscritto dal: Nov 2006
Messaggi: 6
si ora funziona grazie del tuo prezioso aiuto
alexsimone è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto Recensione Samsung Galaxy Z Fold8 Ultra: il pieg...
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli Due settimane con Dacia Spring 2026: novit&agrav...
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre AORUS GeForce RTX 5080 INFINITY WOOD 16G: una sc...
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
Apple TV punta ai diritti USA dell'Open ...
Download pirata di Odissea: attenzione a...
Condivisione Schermo di macOS sotto atta...
Debutta Freelander, il nuovo marchio di ...
Le migliori offerte Amazon di oggi: Appl...
Ecco l'auto della discordia, Voyah Passi...
Virgin Galactic posticipa la ripresa dei...
Apple AirPods Pro 3 a 199€: ANC evoluto,...
Insta360 Flow Pro a 65€: il gimbal per i...
IONIQ 3, parte da Izmit la produzione de...
Per il cofondatore di Arm l'IA non &egra...
Nove CEO dell'AI, nessuno si salva: il m...
OpenAI ha sciolto il team che valutava i...
Dreame Aqua10 Ultra, super calo di prezz...
Microsoft ritira Mico: dal 18 agosto Cop...
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: 18:21.


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