substr funktion schreiben (C)

lalalala

Grünschnabel
hey Leute ihr müsst mir wieder helfen,weiß nich was ich machen soll, bin ne niete in programmierung. HIIILLLLFFFEEEE
hier die aufgabe......danke schon mal....


Viele Programme erwarten die Eingaben der Benutzer als String. Es ist dann die Aufgabe
des Programms diese Eingabe zu überprüfen.
Schreiben Sie eine Funktion, die einen String, der eine ganze Zahl darstellt (C-Datentyp:
long int) in den entsprechenden Wert umwandelt. Die Deklaration dieser Funktion ist also:
long int str_to_long(char in[]);
Dabei soll diese Funktion den Parameter in (den String) auf Fehler überprüfen. Es ist auch
zu berücksichtigen, dass der String zu viele Ziffern enthält und auf dem Rechner gar nicht als
long int darstellbar ist.
Das Resultat der Funktion (der Return-Wert) soll sind:
• der entsprechende Wert des Strings, wenn der String fehlerfrei ist.
• der Wert der größten oder kleinsten long int-Zahl, wenn der String fehlerhaft
ist. Die kleinste Zahl wird verwendet, wenn der String am Anfang das Zeichen
'-' besitzt, sonst wird die größte Zahl verwendet.
Schreiben Sie Ihre Funktion so, dass sie unabhängig von einem spezifischen Rechner ist!
Probieren Sie die Funktion in einem kleinen Hauptprogramm, insbesondere wie sie auf Fehler
reagiert.
 
Wo genau hängts denn?
Du kannst den string ja durchlaufen. Dann kannst du prüfen, ob das Zeichen erlaubt ist und mit dem nächste weiter machen.
Zeichen (char) sind im prinzip integer, also kannst du auch damit Rechnen.
sizeof(long int) sagt dir, wie viele Byte der Datentyp auf dem aktuellen Rechner einnimmt.
 
Hallo lalalala,

genau diese Frage hast du [thread=368965]schon einmal[/thread] gestellt. Wieso fragst du nicht im alten Thema weiter, wenn du noch Probleme hast?

Grüße,
Matthias
 
Also entweder verwechselst du gerade etwas oder du willst uns veräppeln. Die Aufgabenstellung ist jedenfalls im anderen Thema 1:1 die aus diesem Thema hier.

Bitte halte dich doch auch an die Netiquette und wende die gängigen Rechtschreibregeln an. Danke.

Grüße,
Matthias
 
Zurück