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-11-2007, 12:30   #1
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
[c++]Liste dinamiche di stringhe

Volevo dei chiarimenti riguardo l'inclusione di stringhe in liste dinamiche, vi faccio vedere come ho fatto io:
Codice:
#include <iostream>
#include <string>
using namespace std;

struct lista {
	string nome;
	lista *next;
};

int main() {
	lista *p0;
	p0->nome = "prova";
	p0->next = NULL;
	cout<<p0->nome;
}
Se vado a compilare non mi da nessun errore, mentre se lo faccio partire mi da :
Segmentation fault (core dumped)

Dove è che sbaglio?
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 12:43   #2
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
manca la new della tua struct!
e ricordati anche la delete finale.
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 12:44   #3
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originariamente inviato da Re Lothar Guarda i messaggi
Volevo dei chiarimenti riguardo l'inclusione di stringhe in liste dinamiche, vi faccio vedere come ho fatto io:
Codice:
#include <iostream>
#include <string>
using namespace std;

struct lista {
	string nome;
	lista *next;
};

int main() {
	lista *p0;
	p0->nome = "prova";
	p0->next = NULL;
	cout<<p0->nome;
}
Se vado a compilare non mi da nessun errore, mentre se lo faccio partire mi da :
Segmentation fault (core dumped)

Dove è che sbaglio?
Non hai inizializzato p0 .

"lista *p0 = new struct lista;"

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 13:32   #4
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
Quote:
Originariamente inviato da vizzz Guarda i messaggi
manca la new della tua struct!
e ricordati anche la delete finale.
mio dio che sbadato!! grazie è vero...

comunque per un programma di prova come questo, dove l'unico obiettivo è stampare quel valore, serve ugualmente usare delete alla fine?
è vero che se non lo faccio la memoria rimane allocata anche quando lo chiudo?
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 13:34   #5
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
Quote:
Originariamente inviato da Re Lothar Guarda i messaggi
mio dio che sbadato!! grazie è vero...

comunque per un programma di prova come questo, dove l'unico obiettivo è stampare quel valore, serve ugualmente usare delete alla fine?
è vero che se non lo faccio la memoria rimane allocata anche quando lo chiudo?
si, generi dei memory leak.
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 13:35   #6
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
Quote:
Originariamente inviato da vizzz Guarda i messaggi
si, generi dei memory leak.
caspita, questa cosa è micidiale, quindi in un ipotetico caso che io apra e chiuda tante volte il programma, alla fine riempio tutta la memoria??

e se la volessi liberare una volta chiuso sto programma c'è un modo o devo per forza riavviare?!?
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 13:41   #7
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
Quote:
Originariamente inviato da Re Lothar Guarda i messaggi
caspita, questa cosa è micidiale, quindi in un ipotetico caso che io apra e chiuda tante volte il programma, alla fine riempio tutta la memoria??

e se la volessi liberare una volta chiuso sto programma c'è un modo o devo per forza riavviare?!?
nel tuo caso il memory leak all'uscita del programma dovrebbe essere gestito dal sistema operativo, che rende di nuovo disponibile l'area di memoria.
la cosa è ben diversa se il tuo programma resta in esecuzione e continua a mangiare memoria senza deallocarla, allora si potrebbe arrivare anche a schiantare una macchina
in altri linguaggi questo non è possibile perchè l'allocazione è gestita da un garbage collector.
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 13:52   #8
Re Lothar
Senior Member
 
Iscritto dal: Jan 2006
Messaggi: 413
ok ho capito, grazie
__________________
http://vimeo.com/kappaz
Re Lothar è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2007, 14:00   #9
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
Volevo dei chiarimenti riguardo l'inclusione di stringhe in liste dinamiche
Io userei i contenitori della STL senza re-inventare la ruota...
variabilepippo è 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...
TOP 10 offerte Amazon del lunedì:...
State of Decay 3: trailer, data e la mos...
Iconico ed elegante: Samsung Galaxy S26 ...
Cybersecurity a misura di PMI: le soluzi...
Microsoft svela una speciale Xbox Series...
Perché l'IA agentica è la vera intellige...
Con il coupon torna a soli 34,19€ il car...
Resident Evil: Code Veronica torna in un...
AMD a un passo dal sorpasso? Il nuovo So...
Caricare l'auto elettrica o PHEV con la ...
UGREEN presenta i nuovi NASync GT con al...
Gli accessori auto da non perdere: aspir...
Questa bici elettrica è l'affare ...
Recupero dati impossibile? Come gli SSD ...
Questo LG UltraGear OLED da 27'' a 369€ ...
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: 10:45.


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