tedlemegba
abgemeldet
- 20 April 2006
- 2.729
- 175
Hallo!
Ich würde mir Aufgrund eines ernst gemeinten Teilnahmeversuches am BWINF 27 / Runde 2 [A / B] gerne grundlegende Kenntnisse in C aneignen wollen, weil ich die "später" eh noch brauchen werde. Zum Einstieg hab ich ein wenig versucht hier drin zu lesen. Der liebe Compiler meint's aber nicht ganz so gut mit mir und hin und wieder tauchen doch ein paar Problemchen auf. Darum bitte ich hier um eure Hilfe!
Folgendes am Anfang: ich habe zwei Arrays bestehend aus chars (eigentlich integer-Werte, die sich aber im Rahmen von 0 bis 255 bewegen). Die Länge will ich im Code soweit noch "dynamisch" gestalten (nicht überall im Code eine Zahl ändern müssen oder eine sizeof-Funktion zur Länge aufrufen müssen). Allerdings ist das ganze ein bisserl zickelig.
Auf alle vier Variablen würde ich gerne global zugreifen können. Wenn ich den Block allerdings oberhalb von main schreibe, kommt "variable-size type declared outside of any function". Irgendwie kommt der Compiler mit meinen Konstanten nicht so ganz klar. Steht alles in main, funktioniert's problemfrei -- aber Zugriff nur von main aus. Ein static vor den Variablen bringt mir dann "storage size of `foo' bzw. `bar' isn't constant. Was tun?
Merci beacoup!
Edit/PS: Die Variablen jeder Funktion als Parameter zu übergeben finde ich mehr als hässlich. Oder ist das Gang und Gebe? Hm.. in einem späteren Status des Programmes würde ich gerne noch die Variablen alice und bob per Kommandozeile übergeben lassen -- aber auch mit globalem Zugriff (aber auch Konstanten). Gestaltet sich das dann ähnlich problematisch?
PPS: Bloodshed Dev-C++ Version 4
Noch ein Edit: Ich befürchte ja auch fast, dass static das falsche Schlüsselwort ist. Aber was tut dann richtig?
Ich würde mir Aufgrund eines ernst gemeinten Teilnahmeversuches am BWINF 27 / Runde 2 [A / B] gerne grundlegende Kenntnisse in C aneignen wollen, weil ich die "später" eh noch brauchen werde. Zum Einstieg hab ich ein wenig versucht hier drin zu lesen. Der liebe Compiler meint's aber nicht ganz so gut mit mir und hin und wieder tauchen doch ein paar Problemchen auf. Darum bitte ich hier um eure Hilfe!
Folgendes am Anfang: ich habe zwei Arrays bestehend aus chars (eigentlich integer-Werte, die sich aber im Rahmen von 0 bis 255 bewegen). Die Länge will ich im Code soweit noch "dynamisch" gestalten (nicht überall im Code eine Zahl ändern müssen oder eine sizeof-Funktion zur Länge aufrufen müssen). Allerdings ist das ganze ein bisserl zickelig.
const char length_of_foo = 10;
const char length_of_bar = 5;
char foo[length_of_foo];
char folge[length_of_bar];
const char length_of_bar = 5;
char foo[length_of_foo];
char folge[length_of_bar];
Auf alle vier Variablen würde ich gerne global zugreifen können. Wenn ich den Block allerdings oberhalb von main schreibe, kommt "variable-size type declared outside of any function". Irgendwie kommt der Compiler mit meinen Konstanten nicht so ganz klar. Steht alles in main, funktioniert's problemfrei -- aber Zugriff nur von main aus. Ein static vor den Variablen bringt mir dann "storage size of `foo' bzw. `bar' isn't constant. Was tun?
Merci beacoup!
Edit/PS: Die Variablen jeder Funktion als Parameter zu übergeben finde ich mehr als hässlich. Oder ist das Gang und Gebe? Hm.. in einem späteren Status des Programmes würde ich gerne noch die Variablen alice und bob per Kommandozeile übergeben lassen -- aber auch mit globalem Zugriff (aber auch Konstanten). Gestaltet sich das dann ähnlich problematisch?
PPS: Bloodshed Dev-C++ Version 4
Noch ein Edit: Ich befürchte ja auch fast, dass static das falsche Schlüsselwort ist. Aber was tut dann richtig?