Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-11-2008, 13:27   #1
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
[c++]Errore che non mi so spiegare

Salve a tutti premetto che sono un niubbo di c++ vengo da java e devo fare un progettino in c++.

in pratica devo ordinare un'array di strighe con il metodo merge sort.
posto il codice:

Codice:
#include "MergeSort.h"

#include <iostream>
using namespace std;


vector <string> MergeSort::ordina(vector <string> s, int i){

                vector <string>::iterator ct;
                ct=s.begin();
                string appoggio [s.size()];
                int h=0;
                while(ct!=s.end()){
                    appoggio[h]=*ct;

                    h++;
                    ct++;

                    }


                int left=0;
                int right=(int)(s.size());


                mergesort(appoggio,left,right);
                ct=s.begin();




                return s;


    };
void MergeSort::mergesort(string s [], int left, int right){
            if (left<right) {
                int center = (left+right)/2;

                mergesort(s, left, center);
                mergesort(s, center+1, right);
                merge(s, left, center, right);
	}
           //cout << "merda" << endl;
          

};


void MergeSort::merge(string s[], int left, int center, int right) {


                    vector <string>b;

                    int x=left;
                    int j=center+1;
                    int z=0;
                    while((x<=center)&&(j<=right)){

                        if(s[x].compare(s[j])<0){

                            //cout << b[z] << center << endl;
                            b.push_back(s[x]);
                            x++;
                            z++;
                            }
                        else {
                            //b[z]=s[j];
                            b.push_back(s[j]);
                            j++;
                            z++;

                            }
                    }//while 1


                    while(x<=center){

                        //b[z]=s[x];
                        b.push_back(s[x]);
                        x++;
                        z++;

                        }//while 2


                    while(j<=right){
                        //b[z]=s[j];
                        b.push_back(s[j]);
                        j++;
                        z++;

                        }//while 3

                        z=left;
                        vector <string> :: iterator it;
                        it=b.begin();
                        while (z<=right){

                            s[z]=*it;
                            //cout << s[z] << right <<endl;
                            z++;
                            it++;
                            }

                        };
quel passaggio che vedete su dove trasferisco da vector di stringhe ad array l'ho fatto in uno dei mille tentativi di capirci qualcosa,il codice è un po sporco ma è work in progress siate buoni vi prego ^^
il programma crasha dopo aver comunque ordinato ma non so perchè crasha...
Siete la mia ultima spiaggia aiutooooooo!!!
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.

Ultima modifica di Velkan : 15-11-2008 alle 00:29.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2008, 15:20   #2
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Se il codice non lo posti tra i tag CODE ben formattato sarà difficile che qualcuno abbia voglia di mettersi a gurdarlo (ultimamente mi trovo a ripeterlo spesso).
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2008, 17:30   #3
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
ti ringrazio per il consiglio ma on sono pratico di "postaggi" di codice XD

e poi credo che uno che di c++ ne capisce al primo colpo d'occhio se ne accorgerà qui ci dev'essere qualche bestialità abnorme secondo me...!
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 14-11-2008, 18:10   #4
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
edita il primo post e mettilo nel tag code come ha detto banryu79, così non si capisce dove inizia una funzione e dove ne inizia un altra...
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 01:18   #5
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
modificato spero vada bene ora...scusate ma è la prima volta che posto codice su un forum!
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 09:21   #6
Tommo
Senior Member
 
L'Avatar di Tommo
 
Iscritto dal: Feb 2006
Messaggi: 1304
Ma quindi, quand'è che crasha esattamente? E quando crasha cosa dice?

Prova a mettere qualche breakpoint in giro e vedi a che punto dell'esecuzione si blocca...
se si blocca dopo che hai eseguito ::mergesort() credo che l'errore sia nel resto del programma, dato che dopo c'è solo return s;
__________________
*ToMmO*

devlog | twitter
Tommo è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 10:00   #7
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
allora lo vedete quel cout commentato che io ho elegantemente chiamato merda nel metodo mergesort? (scusate scleri da insuccesso )
Quello me lo stampa correttamente, cioè per un'array di dimensione 3 lo stampa 5 volte, la cosa che succede è che crasha immediatamente dopo perchè se nel metodo ordina metto una cout subito dopo la chiamata di mergesort lui non la stampa!

L'errore che mi da non è nessuno mi compare la finestra di windows con il famoso inviare? non inviare? e mi si impalla tutto....io ho pensato ad un ciclo infinito ma....nn ne vedo!
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 10:13   #8
Tommo
Senior Member
 
L'Avatar di Tommo
 
Iscritto dal: Feb 2006
Messaggi: 1304
Hmm con che lo stai scrivendo?
Tipo, su VC++ ci sono i breakpoints da mettere a mano, e se c'è un crash ti da la riga esatta dove è accaduto, ed i valori delle variabili in gioco.
Debuggare a forza di cout non è proprio validissimo
__________________
*ToMmO*

devlog | twitter
Tommo è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 12:12   #9
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Velkan Guarda i messaggi
L'errore che mi da non è nessuno mi compare la finestra di windows con il famoso inviare? non inviare? e mi si impalla tutto....io ho pensato ad un ciclo infinito ma....nn ne vedo!
Probabile puntatore andato a donne di facili costumi...
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 13:09   #10
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
sto sviluppando con code::blocks eh sti puntatori infatti mi sa che rompono un po purtroppo vengo da java e so abituato ad eccezioni e robe del genere che ti rendono la vita piu facile...ho uppato tutto il progetto in code blocks se qualcuno vuole vedere con i suoi occhi...

ComplementidiPOO.rar
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 13:48   #11
anyanka
Senior Member
 
L'Avatar di anyanka
 
Iscritto dal: Feb 2006
Città: Provincia di BA!
Messaggi: 439
ho provato ad eseguirlo:
la prima volta è crashato all'istante,
poi ho tolto l'ultimo "invio" dal file di testo che ho creato come esempio e l'ha eseguito senza problemi...che non riesca a gestire la stringa vuota??
__________________
~ Notebook: Dell Studio 1537 - Intel Core 2 Duo T6400 @ 2,00 GHz ~
~ Cel: Nokia 5230 ~ Console: Nintendo Wii

"La menopausa è quando i cacciatori ubriachi sparano alla cicogna che porta i bebè..."
anyanka è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:01   #12
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
provo subito, anche se gli altri metodi di ordinamento non mi danno questo errore
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:03   #13
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344

ho aggiunto qualche stringa in piu e va...tutto questo non ha senso!!!
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:04   #14
anyanka
Senior Member
 
L'Avatar di anyanka
 
Iscritto dal: Feb 2006
Città: Provincia di BA!
Messaggi: 439
un momento: c'è un comportamento strano!! ho provato ad eseguirlo di nuovo ma mi va di nuovo in crash..
cmq io ho eseguito il main, quindi ottengo i risultati con tutti gli ordinamenti (giusto??)
forse c'è qualcosa nella gestione del file? mi dà un errore di tipo "segmentation fault" facendoil debug
__________________
~ Notebook: Dell Studio 1537 - Intel Core 2 Duo T6400 @ 2,00 GHz ~
~ Cel: Nokia 5230 ~ Console: Nintendo Wii

"La menopausa è quando i cacciatori ubriachi sparano alla cicogna che porta i bebè..."
anyanka è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:12   #15
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
no allora nel main sono commentati gli utilizzi degli altri algoritmi e si c'è qualcosa che non va perchè in effetti se provo a fare una stampa del vettore ordinato mi crasha, a questo punto devo aver fatto davvero casini coi puntatori perchè è come se in java desse una nullpointer exception per intenderci
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:14   #16
anyanka
Senior Member
 
L'Avatar di anyanka
 
Iscritto dal: Feb 2006
Città: Provincia di BA!
Messaggi: 439
sì ho visto adesso i commenti del main...cmq è molto strano il comportamento perchè crasha quasi a caso.. a volte sì a volte no..dipende da quello che hai fatto prima, o forse da come si è liberata la memoria...
__________________
~ Notebook: Dell Studio 1537 - Intel Core 2 Duo T6400 @ 2,00 GHz ~
~ Cel: Nokia 5230 ~ Console: Nintendo Wii

"La menopausa è quando i cacciatori ubriachi sparano alla cicogna che porta i bebè..."
anyanka è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:15   #17
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
mamma che casino guarda è che purtroppo devo usare o sto merge sort o quick sort o heap sort...e fra tutti il merge mi sembrava il piu abordabile ma mi sta facendo impazzire
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:32   #18
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sicuramente uno dei problemi è che se anche funzionasse non ordinerebbe niente, a mergesort passi appoggio, non s.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:44   #19
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
si questo lo so è stata una delle tante prove che ho fatto per capirci qualcosa...cioè gia mi bastava non farlo crashare poi ci avrei lavorato su XD
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
Old 15-11-2008, 14:45   #20
Velkan
Senior Member
 
L'Avatar di Velkan
 
Iscritto dal: Dec 2005
Messaggi: 344
credo sia il metodo compare che lo fa crashare...dite è possibile?
__________________
Desktop: E4400,Gigabyte p35 Ds3, EN8800gt 512mb,2*1gb DDR2 Kingston, LC Power 550W Silent, Maxtor 80gb SATA.

NoteBook: Inspiron 6400 cpu t5500, 80 Gb SATA 5400rpm,x1400 256mb, 1gb ddr2, display 1440*900 TrueLife.
Velkan è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Ora solare tutto l'anno: per la scienza ...
Skydance unirà HBO Max, Paramount...
Deep Tech Revolution: dieci startup e un...
Il telescopio James Webb svela le stelle...
Prime Day, tutte le scope elettriche in ...
Perseverance trova tracce di almeno tre ...
Una tastiera su nastri trasportatori: la...
L’IA entra nella fase operativa: per SDG...
Apple accusa OpenAI: nuovi argomenti imp...
Blue Origin presenta Power Tower, la tor...
Speciale Smart TV sotto i 200€: TCL QLED...
Ricarica wireless senza cavi per gli aut...
Docking station Techly per SSD NVMe e SA...
E-bike Prime Day da 616€: HillMiles e HI...
Nano Banana 2.1 dimezza il prezzo dei to...
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:40.


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