char in unterprogramm
-
DirkB meinte gets.
printf ("Bitte geben Sie eine Zeichenkette ein:\n"); gets (a);
-
Nein, ich meinte fgets.
fgets(a, max-1, stdin);
Da fgets eine Angabe für die maximale Länge hat.
-
Hey,
die Idee mit dem return bzw. mit dem gets ist zwar in Ordnung, nur ist die Aufgabenstellung so wie ich den Code gestaltet habe. Laut Aufgabenstellung soll mit scanf und mit call-by-reference gearbeitet werden.
a) Entwickeln Sie eine C-Funktion, die als Eingabeparameter eine Zeichenkette (char-Feld/array) erhält und die überprüft, ob in der Zeichenkette die Teilzeichenkette “UNIX” irgendwo vorkommt. Als Rückgabewert soll die Funktion -1 liefern, falls das Textmuster “UNIX” in der Zeichenkette nicht vorkommt, anderenfalls soll die Funktion die Position des ersten Buchstaben “U” des ersten Vorkommens von “UNIX” in der Zeichenkette zurückgeben. Geben Sie einen geeigneten Prototypen für die Funktion an und realisieren Sie die Funktion.
bzw.
b) Schreiben Sie ein main-Programm zum Testen der Funktion aus a). Im Haupt- programm ist zunächst eine Textzeile vom Standardinput einzulesen. Deklarieren Sie ein Character-Feld hinreichend großer Länge (z. B. 256) und verwenden Sie zum Ein- lesen einer Eingabezeile auf dieses Character-Feld die scanf-Formatierung scanf(“%[^\n]”, ...)
-
a) Da steht nichts von Call-by-Reference.
Mein Vorschlag entspricht genau den Vorgaben.b) Warum nimmst du dann nicht wie vorgeschlagen scanf(“%[^\n]”, ...)
Das “%[^\n]” liest die Leerzeichen mit ein.
-
achso^^
Ich hatte mich schon gefragt wozu diese komischen zeichen da sind
-
Hallo,
ich habe ein weiteres Problem, wobei ich eure Hilfe brauche.
Ich soll ein Programm schreiben, welches ein Passwort einliest und checkt, ob es mindestens 12 Zeichen, einen Groß- bzw. Kleinbuchstaben und ein nicht-alphanumerisches Zeichen enthält.Nun steht dabei, dass ich mit islower, isupper, isdigit und isalnum arbeiten soll. Das sind Funktionen in der Headerdatei ctype.h.
Kann mir jemand bei der Syntax dieser Funktion behilflich sein? Im Internet stoße ich nur auf Visual Basic und .Net Programmcodes.
Liebe Grüße,
Student
-
http://lmgtfy.com/?q=islower%2Cc
http://lmgtfy.com/?q=isupper%2Cc
http://lmgtfy.com/?q=isdigit%2Cc
http://lmgtfy.com/?q=isalnum%2CcEtwas Mühe muss man sich auch selber geben.
-
http://www.cplusplus.com/reference/clibrary/
Die Seite ist Pflichtbookmark für alle C- und C++-Programmierer.Beachte das im Headerverzeichnis der Seite die C++-Header angegeben sind (d.h. mit c vorne und ohne .h hinten), die Beispiele sind dann aber in C.
-
/* isalnum example */ #include <stdio.h> #include <ctype.h> int main () { int i; char str[]="c3po..."; i=0; while (isalnum(str[i])) i++; printf ("The first %d characters are alphanumeric.\n",i); return 0; }
Mal eine Frage zu diesem Code:
was genau macht die while-Schleife?
-
solange str[i] ein Buchstabe ist erhöhe i um eins.
Babelfish sagt zu der Ausgabe von printf: "Die ersten %d Buchstaben sind alphanumerisch."