Zitat von
fredyxx
Was soll das heißen?
Ich programmiere schon seit über 35 Jahren und habe schon genug solcher Programme gesehen. Nach dem ersten Blick auf den Code in dem zitierten Thread und war damals schon klar, dass es zu einem Thread wie diesem kommen würde.
Zitat von
fredyxx
Ich kann mir kein umfangreiches Programm ohne UP's vorstellen. Das trägt doch eindeutig zur Übersichtlichkeit bei
Du redest davon, tust es aber nicht. Das Konzept in C um Programme zu Strukturieren sind Funktionen nicht gotos.
Statt wie bei dir
Code:
switch(irgendwas)
{
case 0:
Mx =42;
goto Mblub;
break;
// ...
Mblub:
// code ...
goto Mbob;
// anderes Zeug
Mbob:
// nochmehr Code
goto Nochweiter;
ist die Sprache eigentlich so gedacht
Code:
void blub(int paran)
{
// Der Code hinter dem einen Label
}
void bob()
{
// Der Code beim anderen
}
// ...
switch(irgendwas)
{
case 0:
blub(42);
bob();
break;
// ...
und nicht kilometerlanger Bandwurmcode in dem mit goto rumgehüpft wird.
Dann hätten einmal mehr Leute überhaupt Lust sich das anzusehen und man kann jede Funktion mit Ausgaben versehen.
Eventuell auch mit zusätzlichen Parametern, die nur dazu dienen in der Ausgabe anzuzeigen, woher der Aufruf kam.
Also in der Art
Code:
void foo(int caller, int arg)
{
Serial.print("Aufruf von");
Serial.print(caller);
Serial.print(" mit ");
Serial.println(arg);
}
und bei der Verwendung
Code:
// Eine Stelle
foo(1, M42);
// woanders
foo(2, M42);
Lesezeichen