Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Funktionen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
05.09.2006, 13:08 Uhr
KFC Embryo
Ein Huhn


Hi,

ich habe ein Probelm, ich würde gerne wissen was folgendes Programm macht und wie ich eine Ausgabe bei diesem Programm erreichen kann

C++:
#include <stdio.h>
#define MAXLINE 1000

int getline(char line[], int maxline);
void copy(char to[], char from[]);

main()
{
    int len;
    int max;
    char line [MAXLINE];
    char longest[MAXLINE];
    
    max=0;
    while ((len = getline(line, MAXLINE))>0)
        if (len > max){
            max = len;
            copy(longest, line);
        }
    if (max>0)
        printf("%s", longest);
    return 0;
}

int getline(char s[], int lim)
{
    int c,i;
    
    for (i=0; i<lim-1 && (c=getchar())!=EOF && c!='\n'; ++i)
        s[i] = c;
    if (c== '\n') {
        s[i] = c;
        ++i;
    }
    s[i] = '\0';
    return i;
}

void copy (char to[], char from[])
{
    int i;
    i=0;
    while ((to[i]) != '\0')
        ++i;
}



Danke im vorraus


Bearbeitung von 0xdeadbeef:

cpp-tags eingefügt. Nächstes mal selbst machen.


--
An nescis, mi fili, quantilla prudentia mundus regatur?

Dieser Post wurde am 05.09.2006 um 13:14 Uhr von 0xdeadbeef editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
05.09.2006, 13:23 Uhr
0xdeadbeef
Gott
(Operator)


Sieht mir sehr hausaufgabig aus. Ansatz?
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
05.09.2006, 13:34 Uhr
KFC Embryo
Ein Huhn


Ne ist keine HA geht mir nur darum es zu verstehn damit ich die Aufgaben machen kann die bestehen nämlich darin ein Programm ohne Begrenzung zu schreiben und noch ein paar weitere modifikationen vorzunehmen.

Was ich denke ist, dass das Programm die Zeichen in einer Zeile auf 1000 begrenzt und wenn 1000 Zeichen gemacht wurden eine Auflistung der Länge der Zeile ausgibt oder so ????

Bitte hilf mir ich bin TOD seh nur noch queltext und werde sobald ich auf die Strasse gehe überfahren

Danke
--
An nescis, mi fili, quantilla prudentia mundus regatur?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
05.09.2006, 14:05 Uhr
0xdeadbeef
Gott
(Operator)


Die Begrenzung ist, dass das Programm Zeilen höchstens bis 1000 Zeichen Länge einliest.

OK, was getline und copy machen, dürfte vom Namen her ziemlich offensichtlich sein. Im Hauptprogramm wird dann bis zur Eingabe einer Leerzeile (Länge == 0) immer eine Zeile eingelesen, geprüft, ob sie länger ist als die bisher eingegebene längste Zeile und ggf. die neue Zeile als neue längste Zeile gespeichert. Das, was da am Ende drinsteht, wird dann ausgegeben, also die längste eingegebene Zeile.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: