C-Programm (Win-->Mac OSX)

Diskutiere mit über: C-Programm (Win-->Mac OSX) im Mac OS X Entwickler, Programmierer Forum

  1. marco604

    marco604 Thread Starter MacUser Mitglied

    Beiträge:
    319
    Zustimmungen:
    0
    Registriert seit:
    10.10.2004
    Moin! Ich habe ein kleines Problem mit dem Kompilieren eines Programms das für Windows geschrieben wurde. Es soll einfach gesagt nur eine Tastatureingabe mit einem Wert belegen und diesen dann in ein *.txt-File schreiben. (Das Textfile benötige ich für ein POV-Ray-Programm)

    Ich habe schon herausgefunden das es die conio.h nicht auf dem Mac gibt. Explizit brauche ich getch(). Dieser Befehl scheint aber in der <curses.h> zu stehen.

    Beim Kompilieren des Programms bekomme ich jetzt aber noch Fehler,.. :(

    Ich muss dazu sagen das ich _keine_ Ahnung von C-programmieren habe, vielleicht erbarmt sich ja jmd. das zum Laufen zu bekommen. Ist bestimmt auch nur ne Sache von 5 Minuten (wenn überhaupt). Bin für jeden Tipp dankbar!!!

    Ich hänge den Quellcode mal als gepackte Datei an.
     

    Anhänge:

  2. dkreutz

    dkreutz MacUser Mitglied

    Beiträge:
    460
    Zustimmungen:
    17
    Registriert seit:
    14.05.2005
    Meine praktische Programmiererfahrung mit C liegt schon etwas zurück, meine mich aber zu erinnern, dass es im ANSI-C Standard auch ein paar Bibliotheken mit Basisfunktionen zur Ein/Ausgabe auf die Konsole gibt (stdio.h?) die man dann über Terminal/Shell dann in eine Datei umleiten kann
     
  3. below

    below MacUser Mitglied

    Beiträge:
    13.882
    Zustimmungen:
    1.086
    Registriert seit:
    15.03.2004
    Code:
    gcc -lcurses c-cur8.c 
    geht.

    Stürzt dann beim Ausführen ab, aber ich hab auch keine Inputdatei reingetan.

    Alex
     
  4. marco604

    marco604 Thread Starter MacUser Mitglied

    Beiträge:
    319
    Zustimmungen:
    0
    Registriert seit:
    10.10.2004
    Hi, das kompilieren klappt schonmal, leider bekomme ich jetzt die Fehlermeldung

    Bus error

    wenn ich die Datei ausführe :(

    Vielleicht sollte ich das Programm nochmal von vorne aufziehen und selber schreiben in ner Sprache die ich auch kann. Oder gibts sowas vielleicht schon?

    Also ein Progrämmchen das Tastaturevents in eine Datei schreibt!?
     
  5. below

    below MacUser Mitglied

    Beiträge:
    13.882
    Zustimmungen:
    1.086
    Registriert seit:
    15.03.2004
    Nimm doch statt getch() getchar()

    Gruss

    Alex
     
  6. dannycool

    dannycool MacUser Mitglied

    Beiträge:
    1.485
    Zustimmungen:
    34
    Registriert seit:
    02.02.2005
    Nach Änderung von getch() in getchar() bringt das Programm bei mir keinen Fehler. Allerdings habe ich es davor nicht probiert. Es funktioniert sowieso nicht (jedenfalls tut es nichts sinnvolles).
     
  7. marco604

    marco604 Thread Starter MacUser Mitglied

    Beiträge:
    319
    Zustimmungen:
    0
    Registriert seit:
    10.10.2004
    Naja... es soll halt eine Textdatei anlegen und da bestimmte Werte speichern. Ich brauche so ein File um in einem Raytracer (POV-Ray) eine "interaktive" Steuerung zu bauen, also ich die zu rendernden Bilder live beeinflussen kann. Unter Windows klappts ganz gut. Ich werde die Steuerung glaube ich aber eher als Java Applet schreiben.

    Probiere aber zunächst einmal die Verwendung von getchar() aus.

    Was bedeutet der Zusatz -lcurses eigentlich genau beim kompilieren. Habe mal einen Kurs C-Programmierung besucht, aber viel ist da nicht hängengeblieben :rolleyes:

    Danke schonmal für eure Hilfe!




    Edit: Du hast recht, es scheint unter OSX nichts sinnvolles zu machen. :D Au man,.. ich schreib lieber was neues.... Das Programm stammt übrigens von meinem Prof. *g*
     
    Zuletzt bearbeitet: 14.12.2005
  8. fr00p

    fr00p MacUser Mitglied

    Beiträge:
    18
    Zustimmungen:
    0
    Registriert seit:
    20.11.2005
    getchar() benötigt im Gegensatz zu getch()(ist übrigens nicht Ansi-C) nach der Eingabe des Wertes noch ein 'Enter'. Das soll nicht immer ein Problem sein, aber bei mir wars das vor Kurzem. :rolleyes: Habe folgende Funktion im c-plusplus.de Forum gefunden:

    Code:
    #include <termios.h>
          
           int getch() {
               static int ch = -1, fd = 0;
               struct termios neu, alt;
               fd = fileno(stdin);
               tcgetattr(fd, &alt);
               neu = alt;
              neu.c_lflag &= ~(ICANON|ECHO);
              tcsetattr(fd, TCSANOW, &neu);
              ch = getchar();
              tcsetattr(fd, TCSANOW, &alt);
              return ch;
          }
    
    lg, fr00p
     
Die Seite wird geladen...
Ähnliche Themen - Programm (Win >Mac Forum Datum
Mein erstes macOS Programm Mac OS X Entwickler, Programmierer 22.08.2016
C++ Programm von Windows zu Mac? Mac OS X Entwickler, Programmierer 05.05.2016
Xcode Programm in einer interaktiven Konsole starten Mac OS X Entwickler, Programmierer 22.09.2014
Excel VBA (mit GUI) Programm von Win auf Mac Mac OS X Entwickler, Programmierer 06.04.2012
C Programm keine Ausgabe unter Win läufts !? Mac OS X Entwickler, Programmierer 06.12.2005

Diese Seite empfehlen

Benutzerdefinierte Suche