Zeilenanzahl der Konsole im C-Programm nutzen

Dieses Thema im Forum "C/C++" wurde erstellt von ichunix, 25.12.2008.

  1. #1 ichunix, 25.12.2008
    Zuletzt von einem Moderator bearbeitet: 25.12.2008
    ichunix

    ichunix Guest

    Hallo und Frohe Weihnachten!

    Ich schreibe gerade ein Konsolenprogramm in C und möchte die Lizenz (hier GPL in Version 2.0) ausgeben lassen.
    Wenn ich das wie folgt mache, wird logischerweise die ganze Lizenz auf einmal ausgegeben:
    Code:
    #include <stdio.h>
    
    void show_license(void) {
            FILE *license;
            char text[17988];
    
            license = fopen( "gpl" , "r" );
            if (license != NULL)
                    {
                    fscanf( license , "%17988c", text);
                    text[17987]= '\0';
                    printf("%s\n", text);
                    fclose(license);
            }
    }
    
    
    int main() {
            show_license();
            return 0;
    }
    Was ich daran ändern will, ist, dass immer nur so viele Zeilen der gpl ausgegeben werden, wie auf einmal auf die Konsole bzw. das Konsolenfenster passen.
    Wie kann ich denn die Anzahl der Zeilen der Konsole in C herausfinden?
    Im Prinzip soll die Funktion sowas wie das Unix-Kommando more machen, nur will ich nicht more aus meinem Programm heraus aufrufen, sondern das Programm soll das selbst machen.

    Viele Grüße
    Christian
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Gott_in_schwarz, 25.12.2008
    Gott_in_schwarz

    Gott_in_schwarz ar0

    Dabei seit:
    22.04.2007
    Beiträge:
    546
    Zustimmungen:
    0
    Ort:
    Niedersachsen
    Ich zweifle mal hiermit die Sinnhaftigkeit dieses Anliegens an.
    Warum solltest du ein Programm wie "more" (oder less) nachimplementieren, wenns wahrscheinlich eh jeder user deiner Zielgruppe bereits hat?

    Ansonsten wäre "termcap" glaube ich ein gutes google Suchwort. Schau mal bei wiki vorbei. Gibt afair inzwischen auch was neueres (besseres?).
     
  4. #3 ichunix, 26.12.2008
    Zuletzt von einem Moderator bearbeitet: 26.12.2008
    ichunix

    ichunix Guest

    Ich habe mich vielleicht etwas falsch ausgedrückt. Natürlich will ich nicht more/less nachbauen, um es anstelle dessen nutzen zu können. Das wäre vielleicht eine nette Übung, aber hier geht es darum, eine Textdatei auszugeben und per Druck auf Leertaste oder so eine Zeile tiefer zu springen.
    Dies soll in einem Programm genutzt werden, das Berechnungen ausführt. Da das Programm interaktiv sein wird, soll es auch eine Option zum Anzeigen der Lizenz geben. Zwar könnte ich rein theoretisch auch system() benutzen, um more aufzurufen, aber Fremdprogramme nutze ich eher ungern, man weiß ja nie ob more/less/most/sonstwas wirklich auf dem System vorhanden ist (ich habe schon Systeme gesehen, wo sowas oder Dinge wie gzip fehlten)

    Ich werde mal nach termcap suchen.

    Viele Grüße
    Christian
    .
    .
    .
    EDIT (autom. Beitragszusammenführung) :
    .

    So, es funzt! Ich habe es mit terminfo hinbekommen.
     
  5. ./pat

    ./pat Mitglied

    Dabei seit:
    04.12.2008
    Beiträge:
    33
    Zustimmungen:
    0
    Ort:
    NRW
    Zeilenweise auslesen und immer nur eine Zeile ausgeben und dann ein Readkey Aufruf machen?
     
  6. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

Zeilenanzahl der Konsole im C-Programm nutzen

Die Seite wird geladen...

Zeilenanzahl der Konsole im C-Programm nutzen - Ähnliche Themen

  1. String auf Konsole ausgeben

    String auf Konsole ausgeben: Hallo zusammen, ich bin auf ein Problem gestoßen dass für mich sehr unverständlich ist, aber vllt übersehe ich auch etwas Offensichtliches. Es...
  2. Artikel: Das Konsolentool top

    Artikel: Das Konsolentool top: Wer sich über einen langsam laufenden Computer ärgert, kann mit Hilfe verschiedener Programme nachschauen, woran es liegt. Das Programm top geht...
  3. CopyPaste Problem: Sonderzeichen in die Konsole einfügen

    CopyPaste Problem: Sonderzeichen in die Konsole einfügen: Hallo, ich hatte irgendwann mal ein Befehl gesehen, indem jemand ein Problem hatte, einen sed Einzeiler in die Konsole einzufügen. Gut, das...
  4. redhat 6.4 Probleme grafische Konsole

    redhat 6.4 Probleme grafische Konsole: Hallo zusammen, ich habe ein komisches Phänomen. Nachdem ich einen Redhat 6.2 Server auf 6.4 upgegraded habe bekomme ich nach dem Login an der...
  5. Offene Android-Spielkonsole Ouya ist fertig

    Offene Android-Spielkonsole Ouya ist fertig: Die Android-Spielkonsole Ouya, die mittels einer Kickstarter-Initiative Kapital für die Finalisierung des Projektes suchte, will nun Ende des...