Manifestazione nazionale contro le pellicce

Organizzazione Internazionale Protezione Animali
La scadenza della petizione per il divieto degli allevamenti degli animali da pelliccia è stata posticipata al 31 ottobre 2008. Per quella data stiamo pensando di organizzare una manifestazione a Roma per consegnare le firme e per chiedere l’approvazione di una legge che vieti gli allevamenti così come hanno fatto alcuni paesi europei. La petizione si può firmare o scaricare alla questa pagina.
Per la MANIFESTAZIONE NAZIONALE CONTRO LE PELLICCE in occasione del MIFUR di Milano di SABATO 15 MARZO 2008 abbiamo ricevuto altre nuove adesioni da parte di alcune associazioni.
Aiutaci a diffondere la manifestazione scaricando i nostri volantini, fotocopiandoli e distribuendoli nella tua zona!

[Java]Risorse per Swing

Se siete alle prese con Swing e siete come me alle prime armi, vi potrà tornare utile il materiale che ho raccolto: ho riassunto in 13 pagine il libro "Up to speed with Swing 2nd Edition" (528 pagine) copiando i pezzi più significativi e rimaneggiando talvolta il codice degli esempi.

Ovviamente non ho il permesso degli autori per ripubblicare parte dei contenuti del loro libro, ma confido nel fatto che nessuno mi verrà a cercare :-D

Potete scaricarvi 66 programmi che esplorano le basi di queste librerie. Il download degli esempi è possibile farlo direttamente alla pagina del sito del libro. Anche qui non ho i permessi per distribuire il codice del libro, ma confido anche qui che nessuno mi verrà a cercare :-D

Per ogni pagina ho avuto premura di linkare gli ottimi tutorial ufficiali della Sun.

Penso sia venuto fuori un buon lavoro. In futuro quando avrò tempo potrei rimaneggiare ulteriormente tali pagina, magari traducendole in italiano in modo da farle diventare un lavoro più "a norma di legge".

Cerchi del grano a Gorizia...

gorizia

Avviso ai pisani: Voices Of Heaven in concerto

Se abitate in quel di Pisa o nei dintorni (Pontedera per esempio), non perdetevi i concerti di marzo dei Voices Of Heaven.

Firefox mangia memoria

Dico, ma date uno sguardo al task manager:

firefox_memory

Questo con Firefox/2.0.0.12 dopo ore di navigazione. Come è possibile che arrivi a rubare centinaia di megabytes così spudoratamente?

Questo uomo asserisce che Firefox soffra di memory leaks (ossia quando le risorse usate dal programma non vengono rilasciate) e la beta sia invece più performante.
Ma non è il solo a lamentarsi del Firefox "ciucciamemoria": ne parlano in questo forum,se ne parla su mozillaZine.

Potrebbero essere una o più estensioni a rompere le uova nel paniere,

TechCrunch irincara la dose, mostrando come anche la beta assorba voracemente la CPU al confronto di Flock.

Esiste un articolo sulla riduzione della memoria che non ho letto per intero e che dà vari suggerimenti.

Io la beta non l'ho ancora provata. Voi cosa mi dite? Questa versione di Firefox fa i capricci anche da voi? Si comporta diversamente su Linux?

Elenco le 28 estensioni che ho installato. Si son tante ma scommetto che in giro c'è qualcuno che ne ha anche di più:

  • AdBlock Plus;
  • Bookmark Duplicate Detector;
  • coComment;
  • ColorZilla;
  • CookieCuller;
  • CuteMenus;
  • DownthemAll;
  • Dsy.it menu;
  • Firebug;
  • Google blocco note;
  • Google Browser sync;
  • Google Gears;
  • Hyperwords;
  • IE Tab;
  • Javascript Debugger;
  • Link checker;
  • MetroPipe privacy bar;
  • MIME Edit;
  • NoScript;
  • RealPlayer Browser Record plugin;
  • screen grab;
  • StumbleUpon;
  • Super Drag 'n Go;
  • technotizie.it
  • UserAgent Switcher;
  • VideoDownloader;
  • Web Developer;
  • win-get suggest;

Come tema uso Red Cats (green flavor). Datemi consigli, sono tutto orecchie :)

UPDATE: il lancio di Firefox in safe mode con lo stesso profilo ha dato risultati analoghi....

PDF Split and Merge

Con una breve ricerca, mi vedo spuntare al primo posto:
  • un programma open source (chiaramente!);
  • un programma scritto in Java (Swing e altro credo);
  • un programma italiano (Andrea Vacondio);
  • avviabile da linea di comando o con il solito doppio click (o sull'eseguibile Windows "Starter" o sul file jar);
Il programma di chiama, come da titolo, PDF Split and Merge. Che dire, ho provato a fare il merging di due PDF ed è stato molto veloce. L'interfaccia poi è veramente ben studiata (ve lo dice un newbie di Swing d'accordo però concedetemi che oltre ad esser usabile e piacevole allo sguardo). Potete vedere uno screenshot qui sotto. Chissà che un giorno non trovi pure il tempo di studiarmi il suo codice...

[Java]Errata corrige

Ho scritto AWT nei post precedenti? E invece è Swing! C'è stata qualche incomprensione con il correlatore.
Sinceramente preferisco così. C'è più materiale su cui lavorare e dispongo già di alcuni libri.

Ho messo le mani sopra Swing 2nd Edition, MATTHEW ROBINSON, PAVEL VOROBIEV, ISBN 1930110-88-X , ©2003 by Manning.

Vi farò sapere com'è. Ho allestito una pagina ad-hoc per riportare stralci del libro e ovviamente tutti gli esempi :)

Se conoscete libri migliori o tutorial di ineccepibile bellezza, non esistate a commentare qui sotto!

[Java] Download abusivi

Se vi interessa, ho trovato questo forum (vedi link per i titoli) che mette a disposizione una quarantina di libri (la maggior parte penso risalga a 6-10 anni fa) su svriati argomenti del mondo Java.

I libri (link al download) sono raccolti in un archivio con password darkmindz. Il post risale a fine gennaio di quest'anno,quindi non so per quanto tempo rimarrà online :)

[Java] From applet to application

Introduzione

Mentre stavo lavorando la mio progetto di tesi,mi sono accorto che non è poi così intuitivo costruire un'interfaccia grafica in java usando AWT. Si son riuscito a creare frame e menu,pop-up informativi,ma trovo delle difficoltà nel ridisegnare il contenuto della finestra quando accade un nuovo evento o devo presentare dei dati.

Non parliamo poi dei Layout vari...poichè ho molto materiale su come costruire applicazioni con Swing ma non in AWT,mi è venuta l'idea di leggere un libro su come costruire delle Applet, per poi trasformare l'applet in unìapplicazione standalone.

C'è molto materiale in più sulla costruzione di applet e visto che sono costretto per ragioni tecniche all'uso di AWT,spero che questa tecnica renda i suoi frutti.

Links

  • Mindprod: eseguire l'applicazione in entrambi i modi;
  • Rgagnon: convertire l'applet,estendendo Panel invece che Applet,creando un frame a cui si aggiunge il pannello e invocando esplicitamente init(). Il metodo paint rimane invariato.
  • applet2app: in teoria quest'applicazione dovrebbe convertire l'applet in un'applicazione standalone. Ho fatto un breve test su un'applet banalissima: si è piantato.
  • Articolo di Tony Squier su Sun developer Netowrok: mostra vari dettagli su come sia possibile fare la conversione, cambiando o meno il codice;
  • Esercizio a cura di JGuru: presenta l'approccio di mantenere init() richiamandolo nel costruttore o trasportare il suo contenuto nel costruttore (vedi step by step);
  • Woodger: "[..] an applet can easily be converted to an application if the applet is the independent of the HTML page where it resides. If the applet relies on HTML pages elements and dynamic "LiveConnect" calls to/from JavaScript, then it will require more work to convert the applet to a standalone application (because all the HTML/JavaScript interaction will have to be separately migrated to Java)."
  • Java by Example, Clayton Walnum: parte di un capitolo di un intero libro online del '96.

Extra

James Begole presenta le differenze fra librerie AWT e Swing.

Infine ho trovato un prodotto interessante,AjaxSwing:

...is a unique product that provides runtime conversion of Java Swing applications into dynamic HTML web site with AJAX functionality. Web enabling requires installing AjaxSwing and specifying deployment and configuration properties for the Swing application. AjaxSwing provides AjaxSwing Console, a simple wizard-driven GUI to configure your application settings, and a pre-configured Tomcat web server that be used immediately to test your application execution. Built-in demo applications can be used to test the setup and to see how Swing components are represented in AJAX version of the application.

Se si dà un'occhiata alle demo si ha l'impressione di far girare per l'appunto un'applicazione Swing nel browser.

Milioni di righe di codice

Google Search Code costituisce un database ricco di sorgenti in moltissimi linguaggi e può tornare sempre utile per delle ricerche mirate.
Permette anche di fare l'ipload del proprio codice.

Un altro progetto interessante che offre un servizio analogo è koders.com.

Servizi sempre utili per trovare l'ispirazione, per modificare ed adattare il codice altrui alle nostre esigenze oppure per un semplice copy & paste :-D

prog

Un po' di link interessanti

  • Hosting Java: è un servizio offerto dallo studio ILZ,offre un account sul loro sito per quegli sviluppatori che hanno l'esigenza di testare applicazioni JSP senza affidarsi ad un hosting professionale a pagamento. Come specificato qui,si hano 40 MB a disposizione.
  • Ajax poller: script che fa uso di PHP e MySQL. Mostra un istogramma con le percentuali dei voti (qui la demo).
  • Unicode character ranges for Web designer: tabella con tutti i codici Unicode. Ricordo che comunque anche l'applicazione charmap su Windows mostra i codici Unicode (Start > Esegui > digitare charmap);
  • Working with text: tutorial in java riguardante la formattazione del testo, la normalizzazione e l'uso di diversi charset;
  • SACK: framework per AJAX incluso in Wordpress 2.0. Non l'ho provato perchè non ho assolutamente tempo,ma rientrerà nelle cose da fare post laurea.

[Java]Applicazioni console e lettere accentate

Penso chiunque abbia creato un'applicazione sotto Windows per console, abbia verificato che le lettere accentate vengono sostituite da caratteri completamente diversi da quelli desiderati.

Questo è dovuto alle differenti codifiche in gioco: la codifica predefinita di Windows è Cp1252,mentre quella nell'ambiente DOS è cp850 (come mostra questa pagina).

Occorre quindi effettuare una conversione da una codifica all'altra per stampare sulla console le lettere accentate:

String aString = new String("che c'è?");
System.out.println(aString);

Charset Cp850 = Charset.forName("Cp850");
byte [] buffer = new byte[aString.length()];
buffer = aString.getBytes(Cp850);
String bString = new String(buffer);

System.out.println(bString);

In questo modo potete vedere come verrà stampata male la prima stringa e correttamente la seconda.

Post amoroso

Sebbene oggi sia S.Faustino,la festa dei single,con un po' di ritardo pubblico la mia dedica d'amore per Francesca e me (non se la prendano i single :) ).
Il ritardo è dovuto alla "buggosità" (neologismo vomitevole indicante un programma pieno di bachi) di Windows Movie Maker in Vista,che proprio non ne voleva sapere di esportare il video. Sotto XP invece ha fatto il bravo.
Dunque bando alle ciance,dedico il video a me e Francesca,la coppia più bella del mondo :-D



EDIT: Youtube ha infallibilmente riconosciuto come illegittimo l'uso della canzone di sottofondo, molto probabimente Window Movie Maker ha mantenuto qualche informazione di troppo :-D
Se il video scompare,sapete il perchè. Addio

#define IO_SONO_LEGGENDA "ottimo"

Recentemente ho visto Io sono leggenda.

Mi è piaciuto molto,Will Smith recita molto bene e il film riesce a creare più volte delle scene di suspence.
Sono rimasto addirittura commosso,devo ammetterlo,quando uccide il suo cane tra le sue braccia,perchè ormai infetto dal virus.
Insomma il principe di Bel Air di strada ne ha fatta :D


Finalmente un film che ha suscitato qualche emozione a differenza di:

  • Borat: dopo 20 minuti ho deciso di smettere di vederlo. Battute pessime,volgarità gratuita.
  • Alien Versus Predator Requiem: da bravo fan delle saghe di entrambi i mostri fanatscientifici,non potevo comunque perdermi questo film,che si è rivelato "vedibile" ma non troppo "godibile".  Direi che la mia critica si può ben riassumere con "Vado a passare un'ora e mezza di divertimento simple-simple con un po' di scazzottate fra i miei due miti" come dice quest'utente;
  • Until Death: un Vandamme con una faccia strana,non so se è l'invecchiamento o qualche lifting di troppo...Fa il poliziotto violento,drogato,incosciente...entra in coma,resuscita,uccide tutti e alla fine viene ucciso. Se proprio non hai niente di meglio da vedere...

[C++]WinSock tutorial: un po' di link

Nelle settimane passate ho buttato giù la stesura del server in C++. Ad ogni modo ho approfondito blandamente le funzioni di Winsock. Per questo dopo una quasi esaustiva ricerca su Google,presento qui i migliori tutorial trovati in rete.
I criteri di scelta si basano essenzialmente:

  • sulla versione di Visual Studio usata: tutorial che fanno uso di versioni troppo vecchie non sono stati considerati;
  • rilevanza di posizionamento secondo Google;
  • presentazione abbondante di codice;

Links

Altri link che intendo approfondire sono:

[C++ / Visual Studio 2005] Nota sulle direttive #include

Se nel vostro listato inserite #include <fstream.h> all'inizio VS2005 si lamenterà del fatto che non trova tale file. Invece se mettere #include "fstream" VS2005 è contento e trova l'header. Perchè? Mi risponde Igor Tandetnik:

The difference is likely not in angle brackets vs quotes. Note how in one case the file name is fstream.h, and in the other it's just fstream.
The former was used in VC6 and earlier, was deprecated in VC6 and was removed in subsequent version. The latter (fstream without an extension) is modern, standard-conformant header file name.

In buona sostanza #include "fstream" è la sintassi moderna e corretta di includere gli header,anche se non mi è chiaro perchè a questo punto una #include "winsock2" fallisca,mentre #include "winsock2.h" invece no...misteri di Visual Studio :)

Fonte: microsoft.public.vc.language

[C++]Conversioni numeriche

Breve post illustrativo su come convertire degli interi positivi in base 2,8 e 16. Ometto la definizione di number e l'inclusione degli header. Chi volesse saperne di più commenti qui sotto.


cout.setf(ios::showbase); // mostra la base es. 0x per HEX
cout << "The number in hex is " << hex << number << endl;
cout.unsetf(ios_base::showbase); // non mostra più la base
cout << "The number in oct is " << oct << number << endl;
cout << "The number in binary is ";
binary(number);
cout << endl;

La funzione binary(int) viene così definita:

void binary(int number) {
int remainder;

if(number <= 1) {
cout << number;
return;
}

remainder = number%2;
binary(number >> 1);
cout << remainder;
}

[Sicurezza]Videoconferenza su Clipperz

Di Clipperz ne avevo già parlato. Sono un suo utilizzatore (in congiunzione con KeePass),trovo l'idea dei direct login molto intelligente e comoda,purtroppo la gestione delle cards non è delle migliori soprattutto se ti ritrovi a che fare con centinaia di records,ma confido che col tempo diventerà sempre migliore.

A seguire la videoconferenza Lift 08 tenutasi a Ginevra,in cui Giulio presenta Clipperz.


clipperz start-up pitch from Klewel on Vimeo.

Per chi come me si fosse domandato quale software avesse usato in quella presentazione,sappia che si tratta di Keynoteper OSX.
Giulio ci tiene a precisare che l'applicazione per ora rimarrà gratuita e che sono apprezzate le donazioni al progetto.

[Sicurezza]A proposito di ctfmon.exe

A riguardo avevo scritto un articolo,in cui rimuovevo i files pericolosi tramite Ubuntu una volta che montavo le pennine USB al sistema.

Per chi volesse fare i conti con questo worm che si insedia alla radice di tutte le partizioni all'interno di una finta cartella del cestino ("Recycled") potrebbe far comodo quanto suggerisce Trend Micro.

Potete scaricarvi il tool e il file dei pattern. Metteteli tutti e due nella stessa directory e poi eseguite la scansione.

E' consigliabile inoltre:

  • disattivare il ripristino del sistema;
  • disattivare la funzione di AutoPlay al montaggio di dispositivi;

Altri dettagli tecnici riguardo al worm su McAfee.

[Ubuntu]Hp Pavillion tx 1000

Questo computer si è rivelato piuttosto blindato,ossia poco aperto ad avviare altri sistemi operativi. Nonostante sia un bel giocattolino,Vista lo rende piuttosto lento anche con Aero disabilitato (una prova con Ready Boost deve ancora esser fatta).
Ad ogni modo cercando per la rete ho visto che si è in grado di avviare Ubuntu 7.04 Fesity Fawn semplicemente settando la modalità grafica a 1024x768 16 (tasto F4) nella schermata d'avvio (fonte). Avevo un disco vecchio e volevo vedere se si avviava.
Qualcun'altro ha smanettato per farlo andare con OpenSuse con notevoli traguardi,mentre qui sembra che con Hardy Henron le cose siano notevolmente migliorate sebbene non ci sia un tutorial step-by-step.
Su Reddit invece ci si domanda perchè comprare tale portatile se si vuole eseguire Linux e ci si prende a male parole :-D
Io al momento "sto bene" così con Vista anche perchè lavoro su Windows,a casa ho Ubuntu sul fisso,ma non disdegno un futuro dual boot su questo portatilino.

[C++] La classe basic_string: minitutorial

Introduzione

Nel mio progetto di tesi,faccio uso di stringhe di caratteri per l'invio di comandi e il confronto fra stringhe.
Venendo dal mondo Java,ho fatto un po' di fatica ad orientarmi su come vengono trattate le stringhe in C++ (con particolare considerazione all'ambiente Visual Studio).
A seguire alcune considerazioni sulla classe basic_string.

Sprazzi di codice

Quanto segue è la creazione di una stringa e il confronto fra stringhe, prendendo in input una stringa digitata dall'utente. Il confronto viene fatto sia tramite l'operatore "==" sia tramite compare che ritorna 0 se le stringhe sono uguali:

string myString("partenza");
string passwd;

cout << "Stringa: \"" << myString << "\"" << endl;
cout << "Lunghezza stringa: " << myString.length() << endl;

cout << "Scrivi una stringa: ";
getline(cin, passwd, '\n');
if(passwd == "partenza") {
cout << "Usato \"=\": OK" << endl;
}
if(passwd.compare(myString) == 0){
cout << "Usato \"compare\": OK" << endl;
}
Osserviamo ora il seguente confronto:
string newString("getttnversion\r\n");
string another("getttnversion");
cout << "Confronto fra stringhe con caratteri di escape: " << endl;
cout << " - ";
if(newString.compare(another) == 0)
cout << "Risultano uguali\n" << endl;
else cout << "Risultano diverse\n" << endl; // risulteranno diverse!
Le stringhe risultano diverse! Per ragioni di esigenza,quando passo una stringa di caratteri dal client in java,la faccio terminare con un "\n",pensando che recv interpreti la cosa come la fine del messaggio (anche se non ho ben capito su che basi recv determini che il client ha smesso di inoltrare dati...).
Segue quindi una funzione "purificatrice" per le stringhe: rimuovo gli spazi,i carriage return e i line feed:
void cleanString(string *aString) {
for(size_t i = aString->find(" ", 0); i != aString->npos; i = aString->find(" ", i)){
aString->erase(i,1);
}
for(size_t i = aString->find("\n", 0); i != aString->npos; i = aString->find("\n", i)){
aString->erase(i,1);
}
for(size_t i = aString->find("\r", 0); i != aString->npos; i = aString->find("\r", i)){
aString->erase(i,1);
}
}

// come si usa...
cleanString(&anotherString);
In questo modo anotherString verrà ripulita di spazi e dai caratteri '\r' e '\n'. Se qualcuno sa spiegarmi nel dettaglio:
  • come fa recv a determinare la fine dei dati spediti;
  • se aspetta all'infinito oppure scade dopo un timeout;
Mi farebbe un bel piacere :)

Windows Live One Care Safety Scanner: bocciato

E' ammissibile che questo software non mi lasci ricevere da un cotatto un semplice file di testo o un mp3 perchè RITENUTI PERICOLOSI?

Va bene la paranoia ma non esageriamo eh...e poi non ho ben capito se semplicemente faccia i suoi controlli in base all'estensione del file o meno. Spero di no...ad ogni modo non è più un mio problema.

Double check your damn pointers okay?!?

Questo è quello che ti suggerirebbe il tuo computer se ne avesse facoltà (o almeno il mio visto che sono un novello del mondo C++). E lo dice questo bel fumetto su xkcd,che ci proprina una sfilza di fumetti ironizzando su argomenti inerenti la programmazione.

Non dimentichiamoci di Dilbert,tanto caro al mio professore di ingegneria del software,il quale per ogni argomento non mancava mai di inserirci una vignetta :-D

Non so per quale motivo ma mi è venuto in mente un collegamento diretto al BOFH e in particolare Storie Dalla Sala MAcchine. Molto spassose :-D

Esistono vari "corsi" orientati alla gestione dei sistemi, ma quello che insegnano e' basato sui libri per lo piu'. Nessuno ti prepara veramente allo spiegare ad un'utente che infilare la sua banana nel lettore CD non e' una cosa da farsi. SysAdmin e' una questione di creativita' e di essere in grado di scovare il problema e risolverlo. E la soluzione non sempre si trova sul libro.

"Vista is the problem": problemi di crema

Questo sito offre una breve ma efficace panoramica delle più conosciute JVM in commercio per eseguire le proprie applicazioni java.

Chi mi segue saprà che sto scrivendo un'applicazione J2ME Personal Profile e per tali applicazioni con configurazione CDC non basta il riconoscimento nativo dei file jar da parte dei dispositivi mobili,poichè verranno interpretati come midlet e vi daranno errore.

Ho provato a scaricare Cr-eME 4.12: nel mio caso devo eseguire applicazioni java su un Pocket PC con Windows Mobile 2003 SE come sistema operativo,quindi se scaricate dal sito Creme,dovrete specificare il tipo di processore (nel mio caso ARM),il sistema operativo di riferimento (Windows CE va bene) e come target device "Pocket PC".

Avviso per Vista-users

Se possiedi Vista non riuscirai ad installare Cr-eMe sul tuo PDA. Ho scritto al supporto di Creme che mi ha fulmineamente risposto allegandomi un file CAB che mi permette (una volta trasferito sul mio PDA) di installare Cr-eMe:

Hi,
Vista is the problem. Find attached a CAB file. Put it on the device and click on it to install.
Regards,
Rene, NSIcom Help Desk


Quando torno a casa (ora sono in laboratorio) magari faccio l'upload del Cab file così vi scaricate direttamente quello se avete a che fare con dispositivi uguali ai mei ;)

[Vista]Dov'è Telnet?

La microsoft prende l'iniziativa e nasconde cose ritenute "poco usate" dalla maggior parte degli utenti. Potete riattivare Telnet e altre belle cosine andando in:

  • Start
  • Pannello di controllo (visualizzazione di default);
  • Programmi;
  • Programmi e funzionalità > Attivazione o disattivazione delle funzionalità di Windows;
  • spuntare Telnet e quello che vi interessa (oppure togliere la spunta per rimuoverlo);

fonte: Blog MSDN;

[Vista] Abilitare la connessione alla rete per l'emulatore di Visual Studio 2005

Se provate a far riconoscere a Windows Mobile Device Center (da ora WMDC) l'emulatore di Visual Studio 2005 perdete tempo. L'emulatore integrato in Visual Studio SP1 non viene riconosciuto da WMDC. Di solito se cercate di fare un "bind" alla vostra scheda di rete riceverete un errore che vvi inviterà a scaricarvi Virtual PC 2007.

Ma la sua installazione non risolverà il problema. Il problema viene risolto dall'installazione di Device Emulator 2.0. A questo punto:

  • nelle impostazioni di connessione di WMDC specificare "DMA" dal menu a tendina per "Consenti connessioni a uno dei seguenti dispositivi";

dma

  • Da Visual Studio andare su "Tools" > Device Emulator Manager e selezionare un'immagine di un dispositivo. A questo punto con il destro cliccare su Connect. Si avvierà il pocket PC e a fianco dell'immagine nel DEM si vedrà una sorta di freccina verde che ricorda il tasto "Play" dei videoregistratori.
  • Cliccare con il destro di nuovo sull'immagine prescelta e selezionare "Cradle". Questo farà avviare il riconoscimento dell'emulatore da parte di WMDC e ne avrete conferma con il cambio dell'immagine play con un'altra (vedi foto sotto).

cradle

  • specificate un nome per il dispositivo in WMDC e configuratelo per la sincronizzazione (optional) di files e quant'altro.

Messaggi di debug in applicazioni per PDA

Grazie ai vari consigli è finalmente saltata fuori una funzione che permette di dare maggior significato alle parti del programma:

Questa funzione farà comparire nella finestra output per il Debug ciò che abbiamo scritto.

Certo,si potrebbero usare i breakpoints,ma quelli ancora non li ho mai usati in Visual Studio :D

Ricordarsi sempre di guardare la voce "Requirements" in fondo alle funzioni citate nella libreria online di MSDN: questo ci dice quali header importare e quali librerie linkare per il nostro progetto.

Byte Strike Blog - Designed by Posicionamiento Web | Bloggerized by GosuBlogger