In der ix stand, dass GCC3.0 besser mit Feldern mit variabler Länge arbeiten kann. Was meinen die damit? Soweit ich weiß muss man bei C entweder bei einem Array angeben wie lange es sein soll (Bsp int i[3]), oder mit malloc, bzw einer Liste (lib...) arbeiten.
Genau weil Felder mit variabler Länge in C fehlen arbeite ich immer wenn es geht mit anderen Sprachen (Python).
Am Freitag, dem 17. August 2001 um 13:13:01, schrieb Thomas Guettler:
In der ix stand, dass GCC3.0 besser mit Feldern mit variabler Länge arbeiten kann. Was meinen die damit? Soweit ich weiß muss man bei C entweder bei einem Array angeben wie lange es sein soll (Bsp int i[3]), oder mit malloc, bzw einer Liste (lib...) arbeiten.
Im gcc funktioniert auch die variable Laenge:
void f (int size) { double a[size]; }
Torsten
On Fri, Aug 17, 2001 at 01:13:01PM +0200, Thomas Guettler wrote:
In der ix stand, dass GCC3.0 besser mit Feldern mit variabler Länge arbeiten kann. Was meinen die damit? Soweit ich weiß muss man bei C entweder bei einem Array angeben wie lange es sein soll (Bsp int i[3]), oder mit malloc, bzw einer Liste (lib...) arbeiten.
Genau weil Felder mit variabler Länge in C fehlen arbeite ich immer wenn es geht mit anderen Sprachen (Python).
void funktion(int size) { int vektor[size]; ... }
Andere Compiler sagen an dieser Stelle, daß size kein konstanter Ausdruck (zur Übersetzungszseit) ist.
GCC gibt wohl eine Warnung aus.
Best regards from currently Schwerin/Germany Viele Gruesse aus Schwerin/Mecklenburg-Vorpommern Heiko Schlittermann
Am Freitag, dem 17. August 2001 um 14:17:30, schrieb Heiko Schlittermann:
Andere Compiler sagen an dieser Stelle, daß size kein konstanter Ausdruck (zur Übersetzungszseit) ist.
GCC gibt wohl eine Warnung aus.
twerner@vwisbd:~$ cat array.c void funktion(int size) { int vektor[size]; vektor[0] = 0; } twerner@vwisbd:~$ gcc -Wall -c array.c twerner@vwisbd:~$ gcc -pedantic -c array.c array.c: In function `funktion': array.c:3: warning: ANSI C forbids variable-size array `vektor' twerner@vwisbd:~$
Torsten
On Fri, Aug 17, 2001 at 03:21:07PM +0200, Torsten Werner wrote:
twerner@vwisbd:~$ gcc -pedantic -c array.c array.c: In function `funktion': array.c:3: warning: ANSI C forbids variable-size array `vektor'
In C99 sind die Dinger mit drin, der gcc frißt sie aber noch nicht. Laut http://gcc.gnu.org/gcc-3.0/c99status.html ist das noch "broken".
$ /usr/local/pkg/gcc-3.0/bin/gcc -c -pedantic x.c x.c: In function `funktion': x.c:3: warning: ISO C89 forbids variable-size array `vektor' $ /usr/local/pkg/gcc-3.0/bin/gcc -c -pedantic -std=c99 x.c x.c: In function `funktion': x.c:3: warning: ISO C89 forbids variable-size array `vektor'
Im letzten Fall ist die Warung wenig hilfreich.
Reinhard
lug-dd@mailman.schlittermann.de