Forum: Mikrocontroller und Digitale Elektronik Variablennamen oder Funktionsnamen zusammensetzen


von Günther (Gast)


Lesenswert?

Hallo Leute,

Ich programmiere schon etwas länger C und habe die Basics verstanden.
Leider habe ich öfter das Problem das ich entweder Variablen mit den 
Namen var1, var2, var3, ...varn
oder Funktionen mit den namen:
func1(),func2();func3(),...funcn()
wobei aus verschiedenen Gründen n > 500 sein kann.

In so Fällen wünsche ich mir dann oft das ich beispielsweise den 
Funktionsaufruf so gestalten könnte:

for(int i=1; i<500; i++)
{
func"i"()
}

also einfach den namen aus einem string und einer variabklen 
zusammensetze.
Geht sowas.

P.S.: das mein 2zeiler nicht funktioniert weiß ich

von Peter II (Gast)


Lesenswert?

Günther schrieb:
> Ich programmiere schon etwas länger C und habe die Basics verstanden.

nein hast du nicht, sonst würde du diese Frage nicht stellen. Nach der 
compilieren gibt es keine Variabelennamen mehr - damit ist klar das es 
nicht gehen kann.


int var1, var2, var3, ...varn

dafür gibt es arrays:

int var[n];


bei funktionen kann man des mit einem array von Funktionszeigern machen.

von Micha (Gast)


Lesenswert?

Günther schrieb:
> Ich programmiere schon etwas länger C und habe die Basics verstanden.

Dann müssten dir bisher aber auch die mysteriösen Zeiger schon mal 
aufgefallen sein.....

Such mal bei g**gle nach "Funktionszeigern", damit bekommst du dein 
Problem elegant gelöst.

von Oliver (Gast)


Lesenswert?

Hm. Wenn du "des öfteren" solch ein Problem hast, progammierst du 
entweder des öfteren etwas sehr, sehr spezielles, oder dein 
Programmkonzept passt überhaupt nicht.

Aber egal, in solch einem Fall würde ich mir (mit Excel) ein Array mit 
Funktionspointern basteln, und über das dann interieren.

Im Falle der Variablen schreit das sowieso nach Arrays. Was spricht 
dagegen?

Oliver

von Patrick (Gast)


Lesenswert?

Nein, geht nicht.

Für Variablen nimm einfach Arrays, und für Funktionen Arrays, die Zeiger 
auf die jeweiligen Funktionen enthalten.

Wobei ich behaupten möchte, dass Dein Ansatz zumindest problematisch ist 
- Wozu um alles in der Welt brauchst Du über 500 ähnliche Funktionen?
Mit an Sicherheit grenzender Wahrscheinlichkeit lässt sich Dein Problem 
anders - und auch wesentlich eleganter - lösen.
Verrate doch mal mehr über Dein Problem - zu was sollen diese 500 
Funktionen denn gut sein?

von Falk B. (falk)


Lesenswert?

@Günther (Gast)

>Leider habe ich öfter das Problem das ich entweder Variablen mit den
>Namen var1, var2, var3, ...varn

Dafür gibt es Arrays, die gehören zum GANZ kleinen 1x1 jeder 
Programmiersprache.

>oder Funktionen mit den namen:
>func1(),func2();func3(),...funcn()
>wobei aus verschiedenen Gründen n > 500 sein kann.

>In so Fällen wünsche ich mir dann oft das ich beispielsweise den
>Funktionsaufruf so gestalten könnte:

Nennt sich Funktionszeiger.

Funktionszeiger in C

Wobei ich mich frage, was ein Anfänger wie du mit 500 indizierten 
Funktionen macht.

>also einfach den namen aus einem string und einer variabklen
>zusammensetze.

Das geht nicht.

MFG
Falk

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.