C++ V Pascal

Pagina: 1
Acties:
  • 329 views sinds 30-01-2008
  • Reageer

  • Chieliot
  • Registratie: September 2001
  • Laatst online: 04-12-2025
Op school leren wij Pascal, nu heb ik daar met mijn basic ervaring geen zin in en stap ik liever meteen over op een taal zoals C++. Volgens een vriend van mijn zit er geen verschil tussen C++ en Pascal, behalve dan dat je andere statements gebruikt. Wie heeft hier een zinnig woord over te zeggen?:)

Bedankt

AMD XP1800+, 512MB Intern, Maxtor 160Gig, Matrox G550 32 DDR Dual Head in een Chieftec DX-01-SLD


  • Orphix
  • Registratie: Februari 2000
  • Niet online
Nou, ik geloof dat pascal niet met pointers werkt (correct me if i'm wrong, het is al heeeeel lang geleden), en dat is reden genoeg voor mij om C/C++ te kiezen :7

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Chieliot:
Op school leren wij Pascal, nu heb ik daar met mijn basic ervaring geen zin in en stap ik liever meteen over op een taal zoals C++.
Met basic kennis kan Pascal nog erg zinvol zijn...
Volgens een vriend van mijn zit er geen verschil tussen C++ en Pascal, behalve dan dat je andere statements gebruikt.
Dat is het verschil tussen alle imperatieve talen, dus dat zegt niet zoveel. Pascal v C++ is een tamelijk groot verschil in ieder geval.

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


Verwijderd

Zie het als je spreekt al jaren frans en je wil nu spaans gaan doen, 't zijn alle 2 talen met zinnen en woorden dus wat dat betreft heeft je vriend gelijk, zal je het gelijk helemaal gemakkelijk voelen met die taal? lijkt me niet maar 't valt zeker te leren....

Verwijderd

opzich zit er geen echt verschil in
(in pascal kan je b.t.w. ook pointers gebruiken)

ik heb veel ervaring met pascal, en begin nu op school met C, en ik moet zeggen dat de structuur grotendeels hetzelfde is.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

ik geloof dat er in pascal geen OO mogelijkheden zitten... dus het is misschien beter om pascal te vergelijken met C ipv C++

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Nielsz
  • Registratie: Maart 2001
  • Niet online
Op donderdag 11 oktober 2001 14:54 schreef OiSyN het volgende:
ik geloof dat er in pascal geen OO mogelijkheden zitten... dus het is misschien beter om pascal te vergelijken met C ipv C++
Ja, maar ik heb op school ook een jaar C++ gehad, en kregen het jaar daarop pas OO :)
En het eerste jaar was gewoon uit een C boek :)
Rare wereld :)

Verwijderd

Zo C++ gehad zonder gebruik te maken van OO dat is knap :) .

  • reddog33hummer
  • Registratie: Oktober 2001
  • Laatst online: 24-08 18:08

reddog33hummer

Dat schept mogelijkheden

ik denk dat die vriend delphi bedoelt
dat is de OO versie van pascal.
die is vergelijkbaar met Visual C++

maar voor de goede orde C++ tegen Pascal

Pascal ondersteunt geen pointers (naar functies).
Pascal ondersteunt geen OO.
Pascal ondersteunt geen direct memory access (dat is in de stijl van: processor ik will address 9FFFF43 hebben en die moet ge-XORt worden met adress ....).
Pascal ondersteunt geen fork (unix parallel proccessing).

C++ is veel meer platform afhankelijker dan pascal
Delphi is een evolutie van pascal en wordt veel in bedrijven gebruikt (dingen zoals boekhoudprogarmma's)
Pascal heeft veel minder last van memoryleaks en
(standaard C++) plaatsing in het geheugen ( int a = 0; cout << *((&a)--); bijvoorbeeld is een leuke {pointer naar een blok geheugen wat je niet gebruikt en dat inlezen als integer})
enz.

Eerst had ik ook dat je in Pascal geen ASM statements kon plaatsten zodat je bij harware kon komen. Excuus dat kan pascal ook net als C++ dat kan.

Backup not found (R)etry (A)bort (P)anic<br\>AMD 3400+ 64, 2 GB DDR, 1,5 TB Raid5


Verwijderd

Op donderdag 11 oktober 2001 15:11 schreef reddog33hummer een hele berg onzin:
Waar basseer dit allemaal op man?! turbo pascal 1.0 ofzo?!?!? Damn wel vaker iemand bullshit zien posten maar dit slaat toch vrijwel alles..

[edit en snel je posts editen als je commentaar krijgt is ook niet netjes he..]

  • reddog33hummer
  • Registratie: Oktober 2001
  • Laatst online: 24-08 18:08

reddog33hummer

Dat schept mogelijkheden

dat is turbopascal 7.0 geweest waar ik een tijd in geprogrammerd heb voordat ik over ging naar C++

Backup not found (R)etry (A)bort (P)anic<br\>AMD 3400+ 64, 2 GB DDR, 1,5 TB Raid5


  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Op donderdag 11 oktober 2001 15:11 schreef reddog33hummer het volgende:
ik denk dat die vriend delphi bedoelt
dat is de OO versie van pascal.
die is vergelijkbaar met Visual C++

maar voor de goede orde C++ tegen Pascal
Pascal of TP7?
Pascal ondersteunt geen pointers (naar functies).
Pascal ondersteunt geen OO.
Waar is iets als TurboVision dan op gebaseerd?
Pascal ondersteunt geen direct memory access (dat is in de stijl van: processor ik will address 9FFFF43 hebben en die moet ge-XORt worden met adress ....).
Zeker dat het wel ondersteund wordt.
Pascal ondersteunt geen fork (unix parallel proccessing).
C++ kent ook geen fork.
C++ is veel meer platform afhankelijker dan pascal
Ik zou toch zweren dat C++ op veel meer platforms draait
Delphi is een evolutie van pascal en wordt veel in bedrijven gebruikt (dingen zoals boekhoudprogarmma's)
Pascal heeft veel minder last van memoryleaks en
Oh ja?
(standaard C++) plaatsing in het geheugen ( int a = 0; cout << *((&a)--); bijvoorbeeld is een leuke {pointer naar een blok geheugen wat je niet gebruikt en dat inlezen als integer})
enz.
Volgens mij is dat geen geldige C++ (&a is geen l-value, dus -- kan niet. Wat je probeert uit te leggen kan in Pascal ook.
Eerst had ik ook dat je in Pascal geen ASM statements kon plaatsten zodat je bij harware kon komen. Excuus dat kan pascal ook net als C++ dat kan.
Dat is juist iets wat compiler afhankelijk is.

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Op donderdag 11 oktober 2001 15:04 schreef een_naam het volgende:
Zo C++ gehad zonder gebruik te maken van OO dat is knap :) .
code:
1
int main() { bool v = false; return 0; }

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Op donderdag 11 oktober 2001 15:16 schreef Yarvieh het volgende:

[..]

Waar basseer dit allemaal op man?! turbo pascal 1.0 ofzo?!?!? Damn wel vaker iemand bullshit zien posten maar dit slaat toch vrijwel alles..

[edit en snel je posts editen als je commentaar krijgt is ook niet netjes he..]
Wat stond er nog meer dan?

Verwijderd

Op donderdag 11 oktober 2001 15:35 schreef OlafvdSpek het volgende:
Wat stond er nog meer dan?
Letterlijk stond er dit:

Pascal ondersteunt geen pointers .
Pascal ondersteunt geen direct memory access.

Wat natuurlijk al helemaal belachelijk was vandaar mijn nogal korte reactie.. die nu enigsinds overdreven lijkt.. :Z

Verwijderd

De overstap van Basic naar Pascal is veel groter dan die van Pascal naar C++. Beginnen met pascal is dus misschien best nuttig om gestructureerd programmeren (i.t.t de 'spagettiecode' van Basic) te leren.

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op donderdag 11 oktober 2001 14:40 schreef Chieliot het volgende:
Op school leren wij Pascal, nu heb ik daar met mijn basic ervaring geen zin in en stap ik liever meteen over op een taal zoals C++. Volgens een vriend van mijn zit er geen verschil tussen C++ en Pascal, behalve dan dat je andere statements gebruikt. Wie heeft hier een zinnig woord over te zeggen?:)
De statements zijn juist het meest lijkende tussen de 2... allebei hebben ze for en while en zo hoor.

Daarentegen is Pascal gewoon simpelweg een hogere taal: minder werk voor meer resultaat. Dit resultaat zal daarentegen in principe langzamer zijn en kunt er minder stunts in uithalen: maar dat is voor veel mensen juist goed nieuws. Anderen preferen het extra werk van C++ voor de extra mogelijkheden.

Professionele website nodig?


  • Tsjipmanz
  • Registratie: Oktober 2000
  • Laatst online: 13-05 14:52

Tsjipmanz

Der Rudi ist da

Omdat je bij C++ nogal veel met pointers e.d. werkt kan het lastig zijn voor een niet al te ervaren programmeur om rare bewerkingen op geheugenadressen te voorkomen.

Ik weet niet HOE ervaren je bent met Basic, maar ik zou je niet al te druk maken over het feit dat je nu in Pascal moet programmeren. Tenslotte moet je leren programmeren, en dat is iets heel anders dan leren hoe een bepaalde programmeertaal werkt.

There's no such thing as a mistake, just happy accidents - Bob Ross
Relaxte muziek: altijd okee!
- Soulseek rulez -


Verwijderd

Jongens, er is een verschil tussen de oorspronkelijke taal pascal en de implementatie die Turbo Pascal en Delphi daar aan geven. Zo kent standaard pascal niet het string type, geen pointers geen objecten e.d. Een beetje vergelijkbaar met C dus.

De bedenker van Pascal heeft daarna nog modula-2 en modula-3 geschreven waar dergelijke dingen wel in zitten.

Borland heeft de pascal taal zelf flink uitgebreid. Als je nu in TP6+ programmeerd kun je evenveel als in C++. Pointers, Objecten, alles.

Wat je in delphi in TP programmeerd is vaak geen standaard pascal!

Verwijderd

Afbeeldingslocatie: http://www.mgfun.com/stuffforothersites/tabel.jpg

Als we toch bezig zijn :)...


  • Chieliot
  • Registratie: September 2001
  • Laatst online: 04-12-2025
Bedankt voor jullie informatie, ik programmeer al zeker 8 jaar in Basic, maar ik heb ook ervaring met andere talen waarin wel gestructureerd geprogrammeerd word. Ben nu dus maar wel C++ aan het leren, want ik vind het een beetje onzinnig om vanuit basic eerst weer pascal te leren en dan van pascal weer C++ te gaan leren.

Nogmaals bedankt :)

AMD XP1800+, 512MB Intern, Maxtor 160Gig, Matrox G550 32 DDR Dual Head in een Chieftec DX-01-SLD


  • roelio
  • Registratie: Februari 2001
  • Niet online

roelio

fruitig, en fris.

Op donderdag 11 oktober 2001 15:43 schreef 4of10 het volgende:
De overstap van Basic naar Pascal is veel groter dan die van Pascal naar C++. Beginnen met pascal is dus misschien best nuttig om gestructureerd programmeren (i.t.t de 'spagettiecode' van Basic) te leren.
dat die overstap kleiner is ben ik met je eens, maar spaghetticode is sinds QB (PDS?) 7, TurboBasic etc. helemaal niet meer nodig. In pascal kun je ook best spaghetticode creeeren als je wilt, in Basic hoeft het niet als je het niet wilt ...
Hiermee zeg ik verder nix over de mogelijkheden van QB/TB/VB, daar wil ik het niet over hebben :D :D :D

AMD Phenom II X4 // 8 GB DDR2 // SAMSUNG 830 SSD // 840 EVO SSD // Daar is Sinterklaas alweer!!


  • Cyphax
  • Registratie: November 2000
  • Nu online

Cyphax

Moderator LNX/AI
Ik vind programmeren altijd uit 2 onderdelen bestaan:
1. de taal (het 'makkelijke' gedeelte)
2. probleemoplossing (dat is het EIGENLIJKE programmeren)
In Pascal en C zijn de verschillen niet zo bijzonder groot. Je zal zien (als je C bestudeert) dat in Pascal een hele hoop dingen zijn toegevoegd die het alleen makkelijker maken. Denk aan datatypen (string, boolean) die in C niet (direct) bestaan en in Pascal wel.
Verder bestaat de syntax van Pascal meer uit normaal Engels (begin en end tegenover { en })

Wat ik verder kwijt wil is dat Pascal een betere taal is om in te beginnen door die op het eerste gezicht beter leesbare syntax. Kan je eenmaal goed programmeren (niet het taal-gedeelte), dan is de overstap van Pascal naar C niet zo heel groot. Van C kan je ook overstappen naar C++ (OO).

En tenslotte: een hoop zaken zijn compiler-afhankelijk maar de grote compilers ondersteunen in-line assembly, waardoor je in principe alles kan hoor. Moet je wel asm gaan leren maargoed ;)
Hou het erop dat je met Pascal prima kan beginnen. Je stapt toch wel over op C waarschijnlijk en mocht je naar Delphi verhuizen, dan is je die syntax ook niet meer vreemd; ben je van alle markten thuis :P

Saved by the buoyancy of citrus


Verwijderd

Cyphax: Je zal zien (als je C bestudeert) dat in Pascal een hele hoop dingen zijn toegevoegd die het alleen makkelijker maken. Denk aan datatypen (string, boolean) die in C niet (direct) bestaan en in Pascal wel.
Dat toevoegen is niet tov van C. Pascal en C zijn ongeveer gelijktijdig ontwikkeld.

/me gaat zich eens een keer niet met een programmeertalen-draadje bemoeien... :+

  • roelio
  • Registratie: Februari 2001
  • Niet online

roelio

fruitig, en fris.

Op vrijdag 12 oktober 2001 09:07 schreef Cyphax het volgende:
lang verhaaltje
hier ben ik het 100% mee eens, top uitleg, waarheid als een }:O

AMD Phenom II X4 // 8 GB DDR2 // SAMSUNG 830 SSD // 840 EVO SSD // Daar is Sinterklaas alweer!!


  • Cyphax
  • Registratie: November 2000
  • Nu online

Cyphax

Moderator LNX/AI
Op vrijdag 12 oktober 2001 09:11 schreef Arien het volgende:

[..]

Dat toevoegen is niet tov van C. Pascal en C zijn ongeveer gelijktijdig ontwikkeld.

/me gaat zich eens een keer niet met een programmeertalen-draadje bemoeien... :+
ANSI C is volgens mij ouder dan Pascal. Ik heb Pascal niet ontwikkeld dus ik weet niet wat de makers van Pascal in hun achterhoofd hadden :P

Pascal met C++ vergelijken is trouwens niet echt logisch. Pascal met C vergelijken is wel realistisch.
I stick to my conclusion :P
Op vrijdag 12 oktober 2001 08:52 schreef limoentje het volgende:

[..]

dat die overstap kleiner is ben ik met je eens, maar spaghetticode is sinds QB (PDS?) 7, TurboBasic etc. helemaal niet meer nodig. In pascal kun je ook best spaghetticode creeeren als je wilt, in Basic hoeft het niet als je het niet wilt ...
Hiermee zeg ik verder nix over de mogelijkheden van QB/TB/VB, daar wil ik het niet over hebben :D :D :D
Spaghetti code lukt je ook in C en zelfs C++ als je wilt :P
Je 'moet' gewoon altijd zorgen dat je een structuur hebt (PSD maken bijvoorbeeld) voor je een groot programma maakt. Ik heb in Pascal in vroeger tijden veel geprogrammeerd en dat was zo'n beetje spaghetti code. Het enige resultaat is eigenlijk dat ik m'n programma's nu niet meer kan lezen ;)

Saved by the buoyancy of citrus


Verwijderd

Cyphax: ANSI C is volgens mij ouder dan Pascal.
ANSI C? :D Nee, de standaardisatie van C was pas begin jaren 80.

Pascal is uit 1968 IIRC.
Ik heb Pascal niet ontwikkeld dus ik weet niet wat de makers van Pascal in hun achterhoofd hadden :P
Algol bijvoorbeeld.

  • Cyphax
  • Registratie: November 2000
  • Nu online

Cyphax

Moderator LNX/AI
Op vrijdag 12 oktober 2001 09:25 schreef Arien het volgende:

[..]

ANSI C? :D Nee, de standaardisatie van C was pas begin jaren 80.
Hmmm de eerste versie van C iig (ten tijde van de ontwikkeling van UNIX. Dat was nog van VOOR de tijd van de 8086 pc's :)) was er zeker eerder :P
Later idd ANSI C maar dat was ook niet de eerste.

Maargoed het gaat daar niet zozeer om :P
Het kan goed zijn dat ze niet van C uitgingen, zal je best gelijk in hebben maar wat ik aan wilde geven waren wat verschillen tussen Pascal en C, wellicht was mijn formulatie niet correct. :)
IIG zijn we eruit dan? :)

Saved by the buoyancy of citrus


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 17-09 21:46

Creepy

Tactical Espionage Splatterer

Pascal ondersteunt geen pointers (naar functies).
Ok.. dit kan dus wel.. ja.. ook pointer naar functies
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
procedure procmetprocalsparam(procedure heekijknou(param1: integer));
begin
     heekijknou(1);
end;

procedure duh(param1: integer);
begin
     //blaat
end;

procedure goh(param1: integer);
begin
     //nog meer blaat
end;
begin
     procmetprocalsparam(duh);
     procmetprocalsparam(goh);
end;

In pascal kan je net zoveel als in C hoor... en pascal met C++ vergelijken is idd appels met peren vergelijken.
Je vergelijkt een imperative taal met een OO taal.... maar goed :) Pak dan object pascal.. (is de taal die in Delphi wordt gebruikt) Das pascal met OO functionaliteiten

Zie ook "Programming with data structures" van Robert L. Kruse.

Hoop dingen met recursiviteit, pointers, functies, functies als parameters (dat bedoelde je met pointers naar functies.. zoniet.. waar gebruik je ze anders voor?).
Dit boek is er zowel in C als in Pascal variant (is NIET comiler/ide afhankelijke geschreven!!!!)

Ik had ook nog ergens een boek waarin dus het verschil wordt uitgelegd tussen verschillende talen (machine taal, imperatieve talen, oo talen etc.), maar dat boek ligt bij een collega.. en weet niet meer hoe het heet.. maar daarin worden dus precies de mogelijkheden en onmogelijkheden van de verschillende soorten talen uitgelegd.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op vrijdag 12 oktober 2001 09:15 schreef Cyphax het volgende:
Spaghetti code lukt je ook in C en zelfs C++ als je wilt :P
Hoezo zelfs? :?

Kun jij mij een stukje C-spaghetti geven die niet door de C++ compiler komt?

Professionele website nodig?


Verwijderd

Op vrijdag 12 oktober 2001 09:15 schreef Cyphax het volgende:
Ik heb Pascal niet ontwikkeld dus ik weet niet wat de makers van Pascal in hun achterhoofd hadden :P
De bedenker van Pascal heet Niklaus Wirth. Wirth was een van de grote voorstanders van het toen nieuwe concept van gestructureerd programmeren (via stepwise refinement). Hij heeft Pascal ontwikkeld als een taal voor educatieve doeleinden, een taal die studenten en aspirant-programmeurs dwingt tot gestructureerd programmeren. Pascal is daarom een "bondage-and-discipline language".

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op vrijdag 12 oktober 2001 16:54 schreef mietje het volgende:
Pascal is daarom een "bondage-and-discipline language".
Bondage en discipline... :P

Weet je zeker dat het niet Marquis de Sade was? ;)

Professionele website nodig?


Verwijderd

Op vrijdag 12 oktober 2001 16:57 schreef curry684 het volgende:
Bondage en discipline... :P
Tja, hacker jargon heh :) Bondage omdat zo'n taal gesloten is, discipline omdat alles maar op een manier kan.
Weet je zeker dat het niet Marquis de Sade was? ;)
Wirth heeft afentoe wel wat van hem weg ;) Ik vind het bv. gewoonweg sadistisch om een programma te laten eindigen met END. terwijl een procedure/functie eindigt met END; :)

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Op vrijdag 12 oktober 2001 15:50 schreef curry684 het volgende:

[..]

Hoezo zelfs? :?

Kun jij mij een stukje C-spaghetti geven die niet door de C++ compiler komt?
Kan vast wel als die C++ compiler in C++ mode compileert en niet in C mode. C++ heeft veel betere type checking dan C.

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Op donderdag 11 oktober 2001 14:54 schreef OiSyN het volgende:
ik geloof dat er in pascal geen OO mogelijkheden zitten... dus het is misschien beter om pascal te vergelijken met C ipv C++
Waarom niet vergelijken met C++ zonder het OO gedeelte?

  • Cyphax
  • Registratie: November 2000
  • Nu online

Cyphax

Moderator LNX/AI
Op vrijdag 12 oktober 2001 15:50 schreef curry684 het volgende:

[..]

Hoezo zelfs? :?

Kun jij mij een stukje C-spaghetti geven die niet door de C++ compiler komt?
't komt wel door de compiler, spaghetti code is niet code die niet WERKT, 't is code die er niet uit ziet omdat je geen structuur hebt ;)
C++ is in principe zo opgezet dat je juist WEL structuur hebt dus als je dan NOG spaghetti code bouwt ben je best fout bezig :P
Op vrijdag 12 oktober 2001 19:44 schreef OlafvdSpek het volgende:

[..]

Waarom niet vergelijken met C++ zonder het OO gedeelte?
Dat is dan gewoon C.
Dat ++ was eigenlijk gewoon het OO gedeelte.
Verder kan je ZELFS met pascal op een OO manier proggen, middels records en arrays e.d.

Saved by the buoyancy of citrus


  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Nee, C++ zonder OO is niet C.
Je mist bijvoorbeeld templates, type checking, etc.
En als je zelf geen OO code schrijft, kun je bijvoorbeeld nog wel bijvoorbeeld STL gebruiken, waaronder std::string.

Verwijderd

Op donderdag 11 oktober 2001 18:08 schreef mgfun het volgende:
Ow en nog een leuke tabel

http://www.s-direktnet.de/homepages/neumann/langcomp.en.html
Leuke tabel, maar ietsje verouderd...
Object Pascal kent sinds Delphi 5 ook overloading.
En voor multiple inheritance heeft 't een prima alternatief: interfaces. In 't leven geroepen voor COM-objecten, maar uitgegroeid tot een volwaardig onderdeel van Delphi (de hele IDE hangt bv. van de interfaces aan elkaar).
Tikkie omslachtig misschien, maar da's multiple inheritance onder C++ ook. :)
Pagina: 1