Toon posts:

[C] compiler voor c onder windows

Pagina: 1
Acties:

Verwijderd

Topicstarter
Helaas ben ik totaal niet thuis in de linux wereld, maar ik ben nu voor de uni C aan het leren, daar werken we onder SUSE linux, alleen wil ik graag thuis ook aan de slag, maar ik draai onder windows XP. ZIjn er ook compilers voor windows te krijgen waar C op draait, heb na wat gegoogle cygwin geinstaleerd, alleen daar ben ik even mee aan de slag gegaan maar commands als GCC kent hij niet. Ik ben helaas nog een absolute N00B in deze tak, maar hopelijk zo geleerd

Verwijderd

Er bestaat naar ik meen ook een GCC port voor Windows. Even googlen op "free command line c compiler" o.i.d. zal je wellicht verder helpen.

  • Super_ik
  • Registratie: Maart 2001
  • Laatst online: 21-08 15:53

Super_ik

haklust!

je moet voor cygwin ook wel de juiste packeges installeren
alleen cygwin is nogal kaal :)

k gebruik in voor windows meestal borland 5. voor console apps enzo, trouwens ook bruikbaar voor andere platformen :P
als je gui wilt kun je ook builder gebruiken

8<------------------------------------------------------------------------------------
Als ik zo door ga haal ik m'n dood niet. | ik hou van goeie muziek


  • Exirion
  • Registratie: Februari 2000
  • Laatst online: 04:45

Exirion

Gadgetfetisjist

Super_ik schreef op 17 September 2003 @ 19:52:
je moet voor cygwin ook wel de juiste packeges installeren
alleen cygwin is nogal kaal :)
Je kunt ook KDE op Cygwin draaien :) Draai niet snel, maar het werkt :P (hier en daar niet even stabiel, maar goed...)

"Logica brengt je van A naar B, verbeelding brengt je overal." - Albert Einstein


Verwijderd

Topicstarter
Verwijderd schreef op 17 September 2003 @ 19:50:
Er bestaat naar ik meen ook een GCC port voor Windows. Even googlen op "free command line c compiler" o.i.d. zal je wellicht verder helpen.
bedankt ,

heb deze link daardoor gevonden http://www.digitalmars.com/download/freecompiler.html

zal zo even downloaden en installeren even kijken of ik daar verder mee kom, en anders misschien toch maar even linux installeren

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

Voor de mingw port van gcc heb je volgens mij geen cygwin nodig...
Check trouwens Dev-C++, da's een IDE die compilet met mingw's gcc

[ Voor 3% gewijzigd door .oisyn op 17-09-2003 20:06 ]

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.


  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 07-04 13:41
Dit is de win32 GCC port die jij zoekt

  • MisterData
  • Registratie: September 2001
  • Laatst online: 20:35
Mingw werkt idd zonder Cygwin :) Download DevC++ (zie www.sourceforge.net) dan heb je er gelijk een IDE bij ;)

Verwijderd

Topicstarter
haha ik vind het prachtig met wat voor oplossingen jullie allemaal komen, maar ik moet jullie helaas teleurstellen dat ik momenteel nog niet allemaal begrijp wat jullie bedoelen, nog even te complex voor deze beginneling, programma's in c schrijven gaat erg goed , maar ik wist niet dat het programma draaien onder windows zo complex zou worden.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

PrisonerOfPain schreef op 17 september 2003 @ 20:06:
Dit is de win32 GCC port die jij zoekt
Nee, dat is de DOS port
djgpp werkt nogal slecht op win2k en winXP, door een bug in de dos emulator van windows. Dat was trouwens zo, ik weet niet of dat nog steeds is. Maar MS had iig aangegeven er niets aan te willen doen

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.


Verwijderd

Topicstarter
Toevallig zat deze keer bij PCM gratis een linux cd Knoppix 3.2, ideaal want het is een live cd dus kan oo proberen zonder te installeren, ik neem aan dat daar standaard de c compiler in zit.

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 07-04 13:41
.oisyn schreef op 17 september 2003 @ 20:32:
[...]


Nee, dat is de DOS port
djgpp werkt nogal slecht op win2k en winXP, door een bug in de dos emulator van windows. Dat was trouwens zo, ik weet niet of dat nog steeds is. Maar MS had iig aangegeven er niets aan te willen doen
http://clio.rice.edu/djgpp/win2k/main.htm ;)

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

Wat maar weer aangeeft dat het overduidelijk geen win32 port is ;)

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.


Verwijderd

Probeer MS Visual C++, je kan hem vast via de uni vrijwel gratis (student licence) krijgen. Om de storm anti MS/VC++ reacties voor te zijn: je zult op zo'n beetje alle platfoms moeten kunnen werken. Elk platform heeft voor en nadelen, de technische pro's en con's zijn dan niet altijd (vrijwel nooit ;) ) de beslissende factor.

Succes met de opleiding!

Verwijderd

Topicstarter
Verwijderd schreef op 17 September 2003 @ 21:04:
Probeer MS Visual C++, je kan hem vast via de uni vrijwel gratis (student licence) krijgen. Om de storm anti MS/VC++ reacties voor te zijn: je zult op zo'n beetje alle platfoms moeten kunnen werken. Elk platform heeft voor en nadelen, de technische pro's en con's zijn dan niet altijd (vrijwel nooit ;) ) de beslissende factor.

Succes met de opleiding!
ga ik daar eens achteraan, ik zal ook eens kijken of ik borland voor c kan krijgen.

Verwijderd

Femkester, wil je ook gui programma's schrijven? Indien dit niet zo is dan voldoet DJGPP prima. Het draait onder XP en je kan er prima commandline programma's mee schrijven.

Als ik me mijn eerste progsels van de universiteit goed herrinner is meer niet nodig. Later kan je alsnog een stuentenlicentie aanschaffen van een of andere commerciele app. Of dual boot linux installeren natuurlijk!

Verwijderd

Topicstarter
MisterData schreef op 17 September 2003 @ 20:16:
Mingw werkt idd zonder Cygwin :) Download DevC++ (zie www.sourceforge.net) dan heb je er gelijk een IDE bij ;)
ook deze ben ik nu aan het downloaden, kijken of ik daar mee verder kom. De linux cd werkte, probleem is alleen dat ik snel linux moet gaan leren dan en voornamer nog de commando's , heerlijk weer een beetje het oude dos gevoel. Probleem is alleen dat het wel erg omslachtig is steeds linux op te gaan starten, dus draai nu liever eerst nog liever onder windows.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verwijderd schreef op 17 September 2003 @ 21:04:
Om de storm anti MS/VC++ reacties voor te zijn
anti MS/VC++ posts zul je hier in de devschuur (r) niet veel vinden ;)

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.


  • TaXaN
  • Registratie: April 2001
  • Laatst online: 08-09-2023
Topicstarter: ga gewoon voor het reeds vermelde Dev-C++. Een goede free IDE + compiler zonder de franjes van Visual Studio waar je als beginneling toch helemaal niets aan hebt (integendeel). Je zal ook minder verleid worden om non-standard dingen te gebruiken. Eenmaal je standard C onder de knie hebt, kun je andere, meer 'professionele' omgevingen en platformen bekijken.

A polar bear is a rectangular bear after a coordinate transformation.


  • JayTaph
  • Registratie: Oktober 1999
  • Laatst online: 28-11-2025

JayTaph

Portability is for canoes.

LCC is een goeie compiler + tools waarmee je goed uit de voeten kan... (lccwin32)...

Yo dawg, I heard you like posts so I posted below your post so you can post again.


Verwijderd

Topicstarter
TaXaN schreef op 17 September 2003 @ 21:43:
Topicstarter: ga gewoon voor het reeds vermelde Dev-C++. Een goede free IDE + compiler zonder de franjes van Visual Studio waar je als beginneling toch helemaal niets aan hebt (integendeel). Je zal ook minder verleid worden om non-standard dingen te gebruiken. Eenmaal je standard C onder de knie hebt, kun je andere, meer 'professionele' omgevingen en platformen bekijken.
werkt prima! Alleen knalt het scherm wel heel snel weg als je een prog uitvoert, kan geeneens de uitkomst lezen

en hij kent de notitie /* */ functie niet dan krijg ik een parse error

[ Voor 35% gewijzigd door Verwijderd op 17-09-2003 21:58 ]


  • TaXaN
  • Registratie: April 2001
  • Laatst online: 08-09-2023
werkt prima! Alleen knalt het scherm wel heel snel weg als je een prog uitvoert, kan geeneens de uitkomst lezen
Euhm, dat is toch normaal? Zodra een programma z'n ding gedaan heeft, sluit het af. Als je gewoon dubbelklikt op je .exe zul je daar dus weinig van zien. Ofwel je programma runnen in de commandline ofwel ergens op het einde iets toevoegen waardoor het programma wacht. Als je een nieuw C-project start, heeft de main() dit al automatisch.
en hij kent de notitie /* */ functie niet dan krijg ik een parse error
Hoe bedoel je? Comments als volgt werken hier zonder problemen hoor:
C:
1
2
3
4
5
6
/* een commentaarregeltje */

/*
    een commentaarblok
    met twee regels
*/

A polar bear is a rectangular bear after a coordinate transformation.


  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 07-04 13:41
Verwijderd schreef op 17 September 2003 @ 21:46:
[...]


werkt prima! Alleen knalt het scherm wel heel snel weg als je een prog uitvoert, kan geeneens de uitkomst lezen

en hij kent de notitie /* */ functie niet dan krijg ik een parse error
C++:
1
cin.get();

ZOU het moeten doen ;) en die /**/ is wel erg vreemd :\

Verwijderd

Topicstarter
PrisonerOfPain schreef op 17 September 2003 @ 22:05:
[...]


C++:
1
cin.get();

ZOU het moeten doen ;) en die /**/ is wel erg vreemd :\
ja vreemd he, maar nu doet hij het ineens wel goed, dus probleem is gelukkig opgelost.

C++:
1
cin.get();


wat kan ik hier mee?

MAAR ik wil jullie wel bedanken namens heel veel mensen, met dit programma kunnen we wat! Het is me wat 1ste jaars informatiekunde student zijn ;)

[ Voor 18% gewijzigd door Verwijderd op 17-09-2003 22:11 ]


  • TaXaN
  • Registratie: April 2001
  • Laatst online: 08-09-2023
PrisonerOfPain: dat is C++, geen C. Typisch gebruikt men wel eens de code
C:
1
system("PAUSE");

Dat is echter niet portable maar voldoet dikwijls ruimschoots.

femkester: je zal vermoedelijk ergens vóór die /* */ een fout gemaakt hebben. C(++) compilers willen wel eens verwarrende foutmeldingen geven omdat het soms even duurt voor ze doorhebben dat je een fout gemaakt hebt. Als je echt geen fout vindt op de regel die de compiler aangeeft, kijk dan eens of je geen curly brace of puntkomma vergeten hebt.

A polar bear is a rectangular bear after a coordinate transformation.


Verwijderd

Topicstarter
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h> 
main() 
{ 
 
int total,a,b,c,d;                      
 
printf("tik een 3cijferig getal in:"); 
 
scanf("%3d", &total);                  
 
a= total/100;                             
b= total - a*100;                      
c= b/10;                                   
d= total - a*100 - c*10;         
 
printf("het omgekeerde is: %d%d%d\n",d,c,a);      
 
return 0; 

} 


heb al een keer die pause ertussen gezet maar helpt niet, knalt gewoon door

[ Voor 38% gewijzigd door Verwijderd op 17-09-2003 22:46 ]


Verwijderd

Verwijderd schreef op 17 September 2003 @ 21:30:
... dan voldoet DJGPP prima. Het draait onder XP en je kan er prima commandline programma's mee schrijven.
Aangezien ik zelf ook op de uni moet programmeren in c onder linux en weinig zin had om dat thuis te installeren, gebruik ik zelf ook djgpp. Zoals gezegd werkt het prima.

Als editor gebruik ik het programma Textpad. Ik gebruik dit programma al ruim een jaar en vind het zeer prettig werken, zeker voor programmeertalen. Dit is natuurlijk geheel persoonlijk.

DJGPP herkent bij mij (in combinatie met Textpad) zowel de
code:
1
2
3
/* commentaar
   bla bla
 */
als
code:
1
 // commentaar


succes met je opleiding verder

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

TaXaN schreef op 17 September 2003 @ 22:39:
PrisonerOfPain: dat is C++, geen C. Typisch gebruikt men wel eens de code
C:
1
system("PAUSE");

Dat is echter niet portable maar voldoet dikwijls ruimschoots.
als je dan toch geen portable dingen doet gebruik dan getch () die in conio.h zit, hoewel geen ANSI is het desondanks wel bijna overal beschikbaar

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.


  • TaXaN
  • Registratie: April 2001
  • Laatst online: 08-09-2023
Verwijderd schreef op 17 September 2003 @ 22:45:

heb al een keer die pause ertussen gezet maar helpt niet, knalt gewoon door
Eerst en vooral: geef main() eens expliciet int als return type; nu doe je dat slechts impliciet wat als 'bad practice' beschouwd wordt. Tip: voeg in de project options onder 'Parameters' eens "-Wall" (zonder de ") toe in het vak 'Compiler'. Dan gaat de compiler wat strenger naar je code kijken en je waarschuwingen geven als je bijvoorbeeld een gedeclareerde variabele niet gebruikt of een functie gebruikt die niet eerst gedeclareerd is.

system("PAUSE") werkt hier perfect hoor. Ik heb jouw code genomen en het er even aan toegevoegd. Denk er aan om stdlib.h te includen (al zal het zonder ook wel werken).
Wat .oisyn hierboven zegt, is ook een mogelijkheid.

A polar bear is a rectangular bear after a coordinate transformation.


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 21-08 18:33
anti MS/VC++ posts zul je hier in de devschuur ® niet veel vinden
Maar dat is niet omdat die meningen er niet zijn. ;) Dat is omdat software mensen verstandige mensen zijn die weten dat dat soort dingen op flamewars uitdraaien. :)
PrisonerOfPain: dat is C++, geen C. Typisch gebruikt men wel eens de code
C:
1
system("PAUSE");
Volgens mij is dit geen "typische code". Het is wel gigantisch lelijke code.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 01:56
Ik neem aan dat je die system("PAUSE") of getch() of cin.get() alleen maar tijdens het debuggen wilt gebruiken (want in de uiteindelijke versie van je programma wil je 'm zeker niet hebben!); het lijkt me dan niet echt een probleem dat het lelijk en unportable is. Het is maar een enkele, op zichzelf staande regel, die je in de uiteindelijke versie toch weer weghaalt.

[ Voor 6% gewijzigd door Soultaker op 18-09-2003 15:07 ]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

farlane schreef op 18 September 2003 @ 09:04:

Maar dat is niet omdat die meningen er niet zijn. ;) Dat is omdat software mensen verstandige mensen zijn die weten dat dat soort dingen op flamewars uitdraaien. :)
Helemaal mee eens, maar ik deed daarover dan ook geen uitlating ;)
Ik maakte de post meer omdat het er op het forum nogal anders aan toe gaat dan op de t.net frontpage, aangezien de user in kwestie nog maar 1 post had (degene die ik quotte)
Volgens mij is dit geen "typische code". Het is wel gigantisch lelijke code.
Het is typisch lelijke code :P

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.


  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 07-04 13:41
TaXaN schreef op 17 September 2003 @ 22:39:
PrisonerOfPain: dat is C++, geen C.
O-)
Soultaker schreef op 18 September 2003 @ 15:06:
Ik neem aan dat je die system("PAUSE") of getch() of cin.get() alleen maar tijdens het debuggen wilt gebruiken (want in de uiteindelijke versie van je programma wil je 'm zeker niet hebben!);
Tenzij je om user-input hebt gevraagt en je daarna nog iets wil promten, maar idd meestal zo ja ;)
.oisyn schreef op 17 September 2003 @ 23:13:
[...]
als je dan toch geen portable dingen doet gebruik dan getch () die in conio.h zit, hoewel geen ANSI is het desondanks wel bijna overal beschikbaar
Dit is alleen aan te raden om te gebruiken als je alleen C mag gebruiken en/of je hem alleen tijdens het debuggen gebruikt, omdat je anders met een extra lib zit te prutsen die je filesize niet ten goede komt ;)

[ Voor 3% gewijzigd door PrisonerOfPain op 18-09-2003 15:48 ]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

PrisonerOfPain schreef op 18 September 2003 @ 15:48:
Dit is alleen aan te raden om te gebruiken als je alleen C mag gebruiken en/of je hem alleen tijdens het debuggen gebruikt, omdat je anders met een extra lib zit te prutsen die je filesize niet ten goede komt ;)
uhm, ga jij serieus vertellen dat system ("pause") in jouw releases terecht komen?

Maar verder: filesize wordt echt niet veel groter hoor. Het is niet een hele lib die ineens in je executable erbij komt. Goeie distributies hebben voor elke functie een aparte sourcefile. Goede linkers linken alleen de object files uit libraries (een lib is niet meer dan een verzameling van gecompileerde sources) die nodig zijn. Het aantal wat erbij komt is echt minimaal.

Daarnaast: system () is ook C, geen C++, dus zit ook in de C lib

Waarom je het alleen mag gebruiken met C en niet met C++ is mij een raadsel. Als het je te doen is om de verschillende buffering van iostreams en stdio: daar heb je een methode voor: ios_base::sync_with_stdio ()

.edit: hmm, het ging hier over getch () tov system ("pause"), niet tov cin.get (). Jij was niet degene die met system naar voren kwam. Ik vraag me dan ook af waarom je op mij reageerde :)

[ Voor 17% gewijzigd door .oisyn op 18-09-2003 16:07 ]

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.


  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 07-04 13:41
.oisyn schreef op 18 September 2003 @ 16:03:
[...]
Waarom je het alleen mag gebruiken met C en niet met C++ is mij een raadsel. Als het je te doen is om de verschillende buffering van iostreams en stdio: daar heb je een methode voor: ios_base::sync_with_stdio ()
Omdat je bij de meeste C++ console app's toch stdio.h al ge-include hebt, lijkt het mij onnodig om conio.h ook te gaan includen ;) je mag het wel gebruiken maar het is niet aan te raden.

en ik quote alleen het stuk over getch() :)

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 04:06

.oisyn

Moderator Devschuur®

Demotivational Speaker

PrisonerOfPain schreef op 18 September 2003 @ 17:03:
Omdat je bij de meeste C++ console app's toch stdio.h al ge-include hebt, lijkt het mij onnodig om conio.h ook te gaan includen ;) je mag het wel gebruiken maar het is niet aan te raden.
oh, en dat is de reden dat je het alleen bij C mag gebruiken, en niet met C++, zoals je het zo mooi zei?

Bovendien include ik stdio.h vrijwel nooit in een C++ console app (en cstdio ook niet ;)). Overigens staat system () niet in cstdio, maar in cstdlib. En cstdlib include ik eigenlijk ook zelden

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.


  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 07-04 13:41
.oisyn schreef op 18 September 2003 @ 17:14:
[...]


oh, en dat is de reden dat je het alleen bij C mag gebruiken, en niet met C++, zoals je het zo mooi zei?

Bovendien include ik stdio.h vrijwel nooit in een C++ console app (en cstdio ook niet ;)). Overigens staat system () niet in cstdio, maar in cstdlib. En cstdlib include ik eigenlijk ook zelden
Okey, jij je zin, ik was iets te fanatiek met m'n tags :P en trouwens, het kan alleen maar tot verwarring leiden ;)
Pagina: 1