Skip to content
Snippets Groups Projects
Commit 5c63ff41 authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Weitere Beispiele: C-Array zurückgeben, 5.6.2023

parent 7be9faa8
No related branches found
No related tags found
No related merge requests found
#include <stdio.h>
#include <stdlib.h>
int read_something (int **a)
{
int n;
printf ("Wie viele Zahlen? ");
scanf ("%d", &n);
int *b = malloc (n * sizeof (int));
for (int i = 0; i < n; i++)
{
printf ("%d. Zahl: ", i + 1);
scanf ("%d", b + i); /* andere Schreibweise: &a[i] */
}
if (a)
*a = b;
return n;
}
int main (void)
{
int *x = NULL;
int numbers_read = read_something (&x);
printf ("%d eingegebene Zahlen:", numbers_read);
for (int i = 0; i < numbers_read; i++)
printf (" %d", x[i]);
printf ("\n");
free (x);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int read_something (int **a)
{
int i = 0;
printf ("Zum Beenden: -1 eingeben\n");
int n = 1;
int *b = malloc (n * sizeof (int));
do
{
if (i + 1 >= n)
{
n *= 2;
b = realloc (b, n * sizeof (int));
}
printf ("%d. Zahl: ", i + 1);
scanf ("%d", b + i); /* andere Schreibweise: &a[i] */
i++;
}
while (b[i - 1] >= 0);
if (a)
*a = b;
return n;
}
int main (void)
{
int *x = NULL;
int numbers_read = read_something (&x);
printf ("%d eingegebene Zahlen:", numbers_read);
for (int i = 0; i < numbers_read; i++)
printf (" %d", x[i]);
printf ("\n");
free (x);
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int read_something (int **a)
{
int i = 0;
printf ("Zum Beenden: -1 eingeben\n");
int n = 1;
int *b = malloc (n * sizeof (int));
do
{
if (i + 1 >= n)
{
n *= 2;
b = realloc (b, n * sizeof (int));
}
printf ("%d. Zahl: ", i + 1);
scanf ("%d", b + i); /* andere Schreibweise: &a[i] */
i++;
}
while (b[i - 1] >= 0);
if (a)
*a = b;
return i - 1;
}
int main (void)
{
int *x = NULL;
int numbers_read = read_something (&x);
printf ("%d eingegebene Zahlen:", numbers_read);
for (int i = 0; i < numbers_read; i++)
printf (" %d", x[i]);
printf ("\n");
free (x);
return 0;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment