I
iverson702
Grünschnabel
Hallo zusammen,
beim Ausführung folgender Code (Siehe unter), bekomme ich in meinem Array Liste char Liste[] = {1,21,333,433,54,12,33,45,56} den Wert 333 und 433 nicht auf dem Bildschirm gezeigt, sondern komische Werte.
1- Wie kann ich, wenn ich in der main-Methode die Position i und j initialisiert habe, genau die Werte an der Stelle i bis j bekommen. (z.B: Wenn ich int i=1 und j=5 initialisiere, dann sollte ich folgende Werte bekommen:
21 333 433 54 12 ?
2- Wie kann ich die Werte an der Stelle i bis j in einem Array speichern und diese dann später mit return ausgeben?
/* Array_Cut.c */
#include <stdio.h>
#include <stdlib.h>
int Start_Cut; //Anfangbereich
int End_Cut; //Endbereich
char GetArrayCut ( char *Buffer, int Start , int End)
{
int k = ( End - Start ) + 1;
char Ergebnis[k];
int i ;
for (i = Start ; i <= End; i++ )
Ergebnis = Buffer;
//return Ergebnis;
for (i = Start; i<= End; i++)
printf("%d ", Ergebnis);
printf ("\n");
}
int main ()
{
Liste char Liste[] = {1,21,333,433,54,12,33,45,56};
char i = 1 ;
char j = 4;
char *result = GetArrayCut ( Liste , i , j ) ;
}
Ween es möglich wäre, bitte schreibt der modifierte Code dazu.
Besten Dank.
beim Ausführung folgender Code (Siehe unter), bekomme ich in meinem Array Liste char Liste[] = {1,21,333,433,54,12,33,45,56} den Wert 333 und 433 nicht auf dem Bildschirm gezeigt, sondern komische Werte.
1- Wie kann ich, wenn ich in der main-Methode die Position i und j initialisiert habe, genau die Werte an der Stelle i bis j bekommen. (z.B: Wenn ich int i=1 und j=5 initialisiere, dann sollte ich folgende Werte bekommen:
21 333 433 54 12 ?
2- Wie kann ich die Werte an der Stelle i bis j in einem Array speichern und diese dann später mit return ausgeben?
/* Array_Cut.c */
#include <stdio.h>
#include <stdlib.h>
int Start_Cut; //Anfangbereich
int End_Cut; //Endbereich
char GetArrayCut ( char *Buffer, int Start , int End)
{
int k = ( End - Start ) + 1;
char Ergebnis[k];
int i ;
for (i = Start ; i <= End; i++ )
Ergebnis = Buffer;
//return Ergebnis;
for (i = Start; i<= End; i++)
printf("%d ", Ergebnis);
printf ("\n");
}
int main ()
{
Liste char Liste[] = {1,21,333,433,54,12,33,45,56};
char i = 1 ;
char j = 4;
char *result = GetArrayCut ( Liste , i , j ) ;
}
Ween es möglich wäre, bitte schreibt der modifierte Code dazu.
Besten Dank.