K
Katyafiona
Habe folgende Hausaufgabe bekommen:
# Lesen Sie zwei Strings ein und vergleichen Sie, die Strings mit Hilfe der Systemroutine strcmp() alphabetisch. Geben Sie aus, welcher String alphabetisch größer oder kleiner ist.
Implementieren Sie die Aufgaben mit Pointer of Characters. Bei diesem Programm muß der Speicher für die Strings mit malloc besorgt werden.
Data:
char *string1;
char *string2;
Ich habe bis jetzt Folgendes geschafft:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#define TRUE 1
#define FALSE 0
int StringCompare(char *s1, char *s2);
main()
{
int Ret;
char string1[32];
char string2[32];
printf("Bitte geben Sie ein Wort ein>>>\n");
fgets(string1,32,stdin);
printf("Bitte geben Sie noch ein Wort ein>>>\n");
fgets(string2,32,stdin);
Ret = StringCompare(string1,string2);
if (Ret == TRUE)
{ printf("Das erste Wort ist alphabetisch grösser\n"); }
else
{ printf("Das erste Wort ist alphabetisch kleiner\n"); }
}
int StringCompare(char *s1, char *s2)
{
int Ret;
int diff;
diff = strcmp(s1, s2);
if(diff>0)
{
Ret = 1;
}
else
{
Ret = 0;
}
return (Ret);
}
Ich habe jetzt aber keine Idee wo ich hier 'malloc' benutzen kann und was eigentlich 'Pointer of Characters' sind (ist das das Gleiche, wie Zeiger auf Charakter)?
Wäre für Erklärung dankbar
# Lesen Sie zwei Strings ein und vergleichen Sie, die Strings mit Hilfe der Systemroutine strcmp() alphabetisch. Geben Sie aus, welcher String alphabetisch größer oder kleiner ist.
Implementieren Sie die Aufgaben mit Pointer of Characters. Bei diesem Programm muß der Speicher für die Strings mit malloc besorgt werden.
Data:
char *string1;
char *string2;
Ich habe bis jetzt Folgendes geschafft:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#define TRUE 1
#define FALSE 0
int StringCompare(char *s1, char *s2);
main()
{
int Ret;
char string1[32];
char string2[32];
printf("Bitte geben Sie ein Wort ein>>>\n");
fgets(string1,32,stdin);
printf("Bitte geben Sie noch ein Wort ein>>>\n");
fgets(string2,32,stdin);
Ret = StringCompare(string1,string2);
if (Ret == TRUE)
{ printf("Das erste Wort ist alphabetisch grösser\n"); }
else
{ printf("Das erste Wort ist alphabetisch kleiner\n"); }
}
int StringCompare(char *s1, char *s2)
{
int Ret;
int diff;
diff = strcmp(s1, s2);
if(diff>0)
{
Ret = 1;
}
else
{
Ret = 0;
}
return (Ret);
}
Ich habe jetzt aber keine Idee wo ich hier 'malloc' benutzen kann und was eigentlich 'Pointer of Characters' sind (ist das das Gleiche, wie Zeiger auf Charakter)?
Wäre für Erklärung dankbar