Zweidimensionales Array

#3677904
Lesenswert?

Hey ich hab es leider in keiner Beschreibung gefunden.
Ich möchte ein zweidimensionales Array mit Daten beschreiben. (immer die 
gleichen) aber nicht bei der deklaration.

also in meiner .h datei steht dann

char temp_array[35][1];

und jetz möchte ich meine daten reinschreiben mit.

temp_array = {
{-40,497},
{-35,647},
{-30,829},
{-25,1049},
{-20,1308},
{-15,1607},
{-10,1948},
{-5,2331},
{0,2749},
{5,3195},
{10,3663},
{15,4146},
{20,4633},
{25,5115},
{30,5586},
{35,6036},
{40,6461},
{45,6858},
{50,7224},
{55,7558},
{60,7861},
{65,8128},
{70,8366},
{75,8579},
{80,8767},
{85,8933},
{90,9079},
{95,9208},
{100,9322},
{105,9422},
{110,9509},
{115,9586},
{120,9655},
{125,9714},
{255,0},
};

irgendwie tut das nur wenn ich:

char temp_array = {
{-40,497},
{-35,647},......

schreib, aber damit ist das array nur in meiner Funktion verfügbar und 
nicht im ganzen Programm.. hilfe :)
#3677912
Lesenswert?

Mathias K. schrieb:
> irgendwie tut das nur wenn ich:

Glaube ich nicht...

Aber ansonsten ist das in C halt so.

Schreib mal in deine .h Datei:
1
extern char temp_array[35][2];

und in deine .c-Datei außerhalb jeder Funktion
1
char temp_array[35][2] = {
2
{-40,497},
3
{-35,647},......

Etwas später wirst du dann herausfinden, daß das zwar kompiliert, aber 
nicht macht, was du willst.

Der Wertebereich eines char ist halt begrenzt.

All das und noch viel mehr sollte aber in deinem C-Buch stehen.

Oliver
#3677922
Lesenswert?

Eigentlich müsste Dein Compiler mindestens zwei Fehlermeldungen 
ausgespuckt haben, die eine betrifft die Dimension des Feldes, die 
andere den verfügbaren Wertebereich der Elemente. Das sollten wir erst 
einmal klären bevor wir über Sichtbarkeit reden.
#3677928
Lesenswert?

Welchen Wertebereich hat dein ein char auf deinem System?
Passen da Werte wie 255 oder gar 497 rein?

Auf einmal kann man ein Array nur bei der Definition initialisieren.

Und du must dir nochmal die Bedeutung der Werte (für die Dimension) bei 
der Definition und beim Zugriff ansehen.
Gast #3677943
Lesenswert?

Die erste Frage ist doch, wie du Werte von beispielsweise "-40,497" in 
einem Char unterbringen willst. Darauf bist du noch gar nicht 
eingegangen.
Anschließend nach der Wahl des richtigen Datentyps kann man dann mit 
solchen Sachen wie Sichtbarkeiten weitermachen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren