Vai al contenuto
PLC Forum


Imparare C++


orsoblu

Messaggi consigliati

Qualcuno può dirmi, per favore, dove trovare della documentazione sulla programmazione con C++

che spieghi dai principi di base.

In parole povere voglio imparare a programmare in C++ ma capendo la filosofia dei comandi.

un umile grazie a chi mi sarà d'aiuto. ;);):)

Link al commento
Condividi su altri siti


Scusa la poca chiarezza.

L'informazione la chiedevo per non perdere nottate a cercare su siti inutili.

Comunque riguardo al livello di preparazione conosco già diversi linguaggi (BASIC, FORTRAN, PIC) che comunque ho utilizzato molto di rado. quindi la base di programmazione e dei suoi principi ce l'ho.

Volevo solo ampliare la mia conoscenza anche a livello del linguaggio C ma col presupposto di capire cosa sto facendo, e non con la filosofia del copia/incolla. Meglio ancora se supportato da esempi esplicativi.

Come dico di solito Know How is Power! ;)

Link al commento
Condividi su altri siti

Bene, se conosci già i fondamenti della programmazione imparare il C ti sarà più facile (devi imparare solo il linguaggio, in quanto sai già "cosa vuol dire programmare", e ti assicuro che per un principiante non è poco ... :D ).

Diverso è se vuoi imparare il C++, che introduce la programmazione ad oggetti. Questa "filosofia di programmazione" si discosta abbastanza dalla "programmazione procedurale" tradizionale (e qui non ti posso aiutare :( ).

Io ho imparato il linguaggio C seguendo un corso della "Jackson Libri", che cercando sul web ho trovato essere scaricabile gratuitamente da qui, e studiando su di una guida "in formato testo" scaricata da qui.

Si parla di una decina di anni fa, allora c' era il DOS :rolleyes: ...

Non so se queste indicazioni ti possono essere utili, ora il "mondo del computer" è completamente diverso. Con l' avvento di Windows ho smesso di "programmare seriamente", e non conosco materiale informativo sulla programmazione sotto Windows.

Il linguaggio C "puro" è comunque sempre quello, e le basi sono le stesse.

Ti posso consigliare di cercare dispense (slides, appunti di lezioni, ecc.) sui siti universitari (io lo faccio spesso): oggi all' università tipicamente si introduce la programmazione partendo dal C, e sicuramente puoi trovare materiale utile (ad esempio qui, qui, qui, ...).

Qualche "programmatore di professione" potrà sicuramente darti altri spunti.

In bocca al lupo!

Link al commento
Condividi su altri siti

Intanto dovresti studiarti un po' di OOP (Programmazione Orientata agli Oggetti). Come già detto vi sono molte opportunità in rete, una di queste potrebbe essere su www.manuali.net, dove trovi anche molto direttamente su C++, per esempio qui:

http://www.manuali.net/manuali/?c=86

Ma le cose migliori le trovi riservate agli iscritti (l'iscrizione per accedere anche ai manuali riservati è gratuita, sta a te decidere se effettuarla)

Questo è invece gratuito, da consultare in rete: http://www.tutorialpc.it/c++menu.asp

Anche questo non è male: http://www.eptacom.net/pubblicazioni/pub_it/

Poi credo che ti serva anche un kit di sviluppo, per poter provare subito a compilare e lanciare i programmi realizzati da te.

Un compilatore della Borland (C++Builder) potrebbe essere utile per iniziare, richiede una iscrizione gratuita, ma forse preferisci un kit di sviluppo completo, magari freeware, come Dev-C++.

Non aggiungo altro, altrimenti ti costringo a fare una ricerca sulla miriade di opportunità presenti in rete e questo mi pare che tu volessi evitarlo.

Buon Studio

Link al commento
Condividi su altri siti

Sì, il migliore è proprio Dev-C++ in quanto gli altri sono limitati sotto vari aspetti (alcuni forniscono la versione completa solo a chi acquista il prodotto, altri sono a tempo, altri ancora sono qualitativamente più scarsi). E di quelli a pagamento (il solo compilatore è gratuito), a mio avviso, è C++Builder della Borland, non a caso ti ho segnalato questi due link.

Io non andrei a cercare altro. Per darti dei link inutili perderei tempo anch'io, quindi a questo punto, se proprio ne hai voglia, fai tu la ricerca in Internet nei siti che forniscono materiale freeware/shareware (Tucows e volFTP, tanto per citarne due).

Link al commento
Condividi su altri siti

Grazie a tutti, vedrò cosa riesco a fare. La dritta di studiare la OOP penso sia abbastanza importante e credo proprio che le mie difficoltà partano proprio da lì visto che anch'io sono partito dal DOS e fino ad ora ho usato solo sistemi procedurali legati alle macchine.

Credo ne avrò per un pò! <_<

Modificato: da orsoblu
Link al commento
Condividi su altri siti

Salve, ho trovato un documento in inglese su internet che si intitola "Learn the C++ in 21 Days" che significa Impari il C++ in 21 giorni. se vuoi posso mandartelo con email. Contatta mi sul mio email

Link al commento
Condividi su altri siti

:) Grazie jesgat, il libro al quale ti riferisci ce l'ho già (Borland C++ Builder La guida ufficiale ed. Apogeo).

Ho inoltre trovato la guida alla programmazione di Borland. Come programma stò usando C++ builder 6 enterprise della borland in valutazione (60 gg di tempo).

:wallbash: Cominciano proprio da quì i guai, perchè quando comincio ad editare la solita stupida "Lezione 1: scrivi "ciao""

#include <iostream.h>

int main();

{

cout <<"Hello World!\n";

return 0;

}

come specificato dai manuali, immancabilmente la compilazione mi da errore, il che non è un bell'inizio.

Tenuto conto che quando apro il programa è già presente una form già preparata con degli include che non so a che servono.

Praticamente sto cercando il bandolo della matassa del filo di arianna. :blink:

Link al commento
Condividi su altri siti

Sto cercando anche io di imparare il C++, e ho provato ad eseguire il tuo esempio con Dev-C++.

Copiando e incollando il tuo programma per farlo funzionare ho tolto il punto e virgola dopo

int main();
Link al commento
Condividi su altri siti

:wacko: OK un passo è fatto ma purtroppo con gli occhi chiusi.

Il compilatore ha fatto il suo dovere ma mi ha avvisato che iostream.h è antiquato quindi rimango sempre con i dubbi di non avere sotto controllo quello che sto facendo.

Un conto è fare quello che ti è stato spiegato, un'altro è capirlo.

In pratica la differenza fra un burocrate :wallbash: e un tecnico. :whistling:

Link al commento
Condividi su altri siti

gluca2,

Intanto non sono parentesi grafiche, ma graffe.

La funzione che hai creata avresti dovuto scriverla così:

int Somma(int x, int y)

{

int S;

S=x+y;

return S;

}

Modificato: da nll
Link al commento
Condividi su altri siti

Confermo. Le prove che ho fatto con la prima lezione mi hanno permesso di cominciare a capire la logica di dichiarazione delle funzioni.

Quindi ogni istruzione finisce con ;

Link al commento
Condividi su altri siti

:wallbash::superlol: EUREKA!!! comincio a capire. Unico neo in questo momento sono le dichiarazioni include e pragma che vorrei capire in quale modo si fa a sapere se e quando vanno inserite e dove trovare il loro elenco. (Le ho inserite solo perchè indicato dal testo e perchè il compilatore mi dava errore se le omettevo) es. Che diavolo è esattamente vcl.h, cosa contiene?

//Programma calcolo posizione fra punti (generatore array posizionatore)

//----------------- Dichiarazione librerie ---------------------------------

#include <vcl.h>

#include <iostream.h>

#include <conio.h>

#include <iomanip.h>

#pragma hdrstop

#pragma argsused

//------------------ Dichiarazione tipo variabili ----------------------------

//Dichiara variabili di tipo intero

int StepAttuale,PuntiTot;

//Dichiara variabili a virgola mobile

float Punto1, Punto2, Punto, Delta, Passo, Posizione;

//Dichiara espressione distanza fra punti estremi

float DeltaExp(float,float);

//Dichiara espressione interasse fra punti adiacenti

float PassoExp(float, int);

//Dichiara espressione posizione del punto X

float PosizioneExp(float,int,float);

//-------------------Programma Principale ------------------------------------

int main(int argc, char* argv[])

{

cout << "Primo punto? " << endl;

cin >> Punto1; //input primo punto

cout << "Ultimo punto? " << endl;

cin >> Punto2; //input ultimo punto

cout << "Punti totali? " << endl;

cin >> PuntiTot; //input punti totali

Delta = 0; // |

Passo = 0; // |Inizializzazione variabili iniziali

Posizione = 0; // |

Delta = DeltaExp(Punto1,Punto2); //chiama subroutine e

//passa i valori da elaborare

Passo = PassoExp(Delta,PuntiTot);//chiama subroutine e

//passa i valori da elaborare

Punto = PuntiTot; //assegna il valore al contatore punti

//---------- Inizio blocco ripetuto ---------------------------------

do {

cout << "Punto da raggiungere: " << Punto << endl;

Punto--; //Decrementa contatore

//Calcola posizione del punto assegnato dal contatore

Posizione = PosizioneExp(Passo,Punto,Punto1);

//Riporta a video o il risultato

cout << "Quota punto da raggiungere: " << Posizione << endl;

} while (Punto > 0); // se condizione non rispettata ripete

//--------- Fine blocco ripetuto -----------------------------------

cout << endl <<"Premere un tasto per terminare...";

getch(); //attende pressione tasto per terminare

return 0; //Fine Programma

}

//--------------- Subroutine -----------------------------------------------

float DeltaExp(float Punto1,float Punto2)

{

Delta=Punto2-Punto1;

return Delta;

}

//---------------- Subroutine ----------------------------------------------

float PassoExp(float Delta,int PuntiTot)

{

PuntiTot--;

Passo = Delta / PuntiTot;

return Passo;

}

//--------------- Subroutine -----------------------------------------------

float PosizioneExp(float Passo, int Punto, float Punto1)

{

Posizione=Passo*Punto;

Posizione=Posizione+Punto1;

return Posizione;

}

Link al commento
Condividi su altri siti

  • 3 months later...

Ciao,

per la programmazione ti posso consigliare il Labwindows/CVI che trovi sul sito www.ni.com (National Instrument). Lo scarichi qui (ftp://ftp.ni.com/evaluation/cvi/pc) e lo puoi usare in tutte le sue funzionalità per 30giorni.

Da acquistare costa un botto di soldi, ma secondo me per imparare è il MASSIMO in assoluto.

Ti guida nella programmazione, dove c'è un errore ti avverte e praticamente ti prende per la manina per risolverlo, se dimentichi una libreria te la indica e ti chiede se la vuoi inserire in automatico.

Poi ti guida nella scelta delle librerie da usare.

Insomma ti vizia un tantino troppo. Ma per chi è all'inizio forse può essere utile.

Nel sito che ho indicato, se non sbaglio, ci sono le ultime tre versioni: la 7.0, la 7.1 e la 8.0.

Secondo me sono pure troppo esagerate, se in qualche modo potete procuravi la 5.5 va più che bene, in rete si trova proprio tutto.

In ogni caso fatevi un giro nelle sotto cartelle del sito ftp che ci sono un sacco di cose interessanti.

Ciao e in bocca al lupo.

Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...