C programmierung am mac ?

tak3

Jonathan
Registriert
21.01.07
Beiträge
81
Hi, bestimmt wurde das schon einmal gefragt aber hab leider nichts im forum gefunden. bin kürzlich von win auf mac umgestiegen und ziemlich glücklich damit, habe auch nicht vor bootcamp zu benutzen :). nur programmieren wir derzeit in der schule c mit dem editor und compiler von bloodshed. für den mac hab ich mir nun xcode geladen. nur kompiliert der mir irgendwie nicht mal das simple hallowelt. kann mir hier jemand sagen wo die unterschiede liegen dürften die ich beim schreiben beachten muss und ob es eine einfachere applikation zum prorammieren gibt wie ich es eben von bloodsheds dev c gewöhnt war ?:)

mal der quellcode wie ichs unter win gewöhnt war :
#include <stdio.h>
#include <stdlib.h>
int main() // Hauptfunktion
{
int clrscr(); /* Bildschirm reinigen*/

printf("HalloWelt "); // Ausgabefunktion

system("PAUSE");

return 0; // uebergabe
}
hoffe hier kann mir jemand helfen ^
 

floorjiann

Strauwalds neue Goldparmäne
Registriert
18.01.07
Beiträge
639
also, lass mal ein paar Sachen weg

system("PAUSE");
return 0;

und schreibe oben void main anstatt int main, ist soweit ich weiß bei C nicht nötig, aber ist auch schon länger her

Funktioniert es dann?
Was gibt denn XCode für eine Fehlermeldung aus?

Für den Anfang reich aber auch der normale gcc Compiler und ein Editor wie Textwrangler, damit man vielleicht nicht von den Funktionen von XCode überfordert wird, wenn man noch nicht so viel Erfahrungen hat
 

tak3

Jonathan
Registriert
21.01.07
Beiträge
81
irendwie wird die option compile dann nur grau unterlegt angezeigt ?!??!:mad:
 

Nighthawk

Linsenhofener Sämling
Registriert
16.12.06
Beiträge
2.558
File -> New Project -> Command Line Utility -> Standard Tool. Namen geben. main.c editieren.
 

Anhänge

  • Picture 4.png
    Picture 4.png
    104,6 KB · Aufrufe: 2.813

Mitglied 7974

Gast
Dass deine Main-Funktion mit "int" und nicht mit "void" beginnt, ist absolut richtig. Manche auf dem GNU-C-Compiler basierende Programme lassen sich gar nicht compilieren, wenn du "void" verwendest. "int" ist der momentane Standard.

Den folgenden Code solltest du problemlos compilieren können:
Code:
#include <stdio.h>
 
int main(int argc, char** argv) {
    printf ("Hallo, Welt\n");
}

Da du XCode installiert hast, sollte sich nun auch der Mac-GNU-C-Compiler auf deinem System befinden, sodass du den Code einfach nur in eine Datei mit der Endung .c schreiben musst. Leg die Datei am besten erstmal auf den Desktop.

Öffne dann das Terminal ("Programme > Dienstprogramme > Terminal"; liegt bei mir im Dock) und wechsle darin das Arbeitsverzeichnis zum Desktop. Falls du dich noch nicht mit Unix-Befehlen auskennst, hier der Befehl:
Code:
cd Desktop

Danach musst du noch den GNU-C-Compiler benutzen. Ich nehme mal an, du hast deine Datei "test.c" genannt. Daher sähe der Compiler-Befehl so aus:
Code:
gcc -o test test.c

gcc steht für GNU-C-Compiler.
-o test gibt an, welchen Namen das Compilat tragen soll. Ich möchte also, dass unser Programm "test" heißt. Wichtig ist, dass du unter OS X keine .exe-Endung benötigst.
test.c ist einfach nur der Name des Quellcodes.

Du könntest die o-Option auch weglassen, doch dann würde gcc das erzeugte Compilat selbstentscheidend "a.out" nennen.

Tja, sofern dir der Compiler keine Fehlermeldungen ausgibt, kannst du das Programm dann einfach folgendermaßen starten:
Code:
./test

Viel Spaß beim Probieren!
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
1) "clrscr" ist eine verwerfliche Abscheulichkeit, die es in keinem IEEE, ANSI oder sonstigem Standard, sondern AFAIK nur unter Borland® C für Microsoft™ Window® gibt. D.h. es ist nicht nur OS, sondern auch Compiler abhängig.

2) "system" ruft eine Shellfunktion auf. Ich vermute mal, dass es unter Microsoft™ Windows® eine Funktion "PAUSE" gibt, auf den mir vertrauten Betriebssystemen gibt es die nicht

Sonst gab es im Thread ja bereits sehr brauchbare Hinweise

Alex