|
Hauptseite - Welches System? - Hardware - Software - Emulatoren - |
Internet MausNet Programmieren Verweise Über |
Mit den Testfunktionen läßt sich nun Prüfen, ob der Name des Cookies nur aus darstellbaren Zeichen ohne Lerzeichen besteht. Wenn ja, könnte es sich um ein Kürzel handeln und der Name des Cookies läßt sich auch als Text ausgeben. Da im Cookie selbst der Platz für die abschließende Null fehlt, wird die Textausgabe im Kapitel über string.h besprochen.
#include <string.h> #include <stdio.h> #include <ctype.h> #include "cookie.h" void CookieSetL(CookieEntry *Cookie,long Name,long Value) { Cookie->name.name_long = Name; Cookie->value = Value; } void CookieSetS(CookieEntry *Cookie,char *Name,long Value) { memcpy(Cookie->name.name_array,Name,4); Cookie->value = Value; } void CookiePrint(CookieEntry *Cookie) { printf("Name des Cookies: %d\n", Cookie->name.name_long); printf("Wert des Cookies: %d\n", Cookie->value); if (isgraph(Cookie->name.name_array[0]) && isgraph(Cookie->name.name_array[1]) && isgraph(Cookie->name.name_array[2]) && isgraph(Cookie->name.name_array[3])) { printf("Der Cookie besteht aus darstellbaren Zeichen\n"); } } void CookieInput(CookieEntry *Cookie) { printf("Name des Cookies (long): "); scanf("%ld\n", &(Cookie->name.name_long)); printf("Wert des Cookies (long): "); scanf("%ld\n", &(Cookie->value)); } int CookieIsNullCookie(CookieEntry *Cookie) { return Cookie->name.name_long == NULL_COOKIE; } int CookieIsCookie(CookieEntry *Cookie,long Name) { return Cookie->name.name_long == Name; } int CookieRead(CookieEntry *Cookie,FILE *stream) { return(fread(Cookie,sizeof(CookieEntry),1,stream) == 1); } int CookieWrite(CookieEntry *Cookie,FILE *stream) { return(fwrite(Cookie,sizeof(CookieEntry),1,stream) == 1); }
English version not yet available. |