Forum: Compiler & IDEs Wieder ein mal struct


von nighteagle (Gast)


Lesenswert?

Moin,

also nachdem ich das AVR-Tutorial von Mikrokontroller.net und das 
Online-Tutorial von schellong.de gelesen habe, sowie mehrere Stunden mit 
meinem Freund Google verbracht habe jetzt folgende Frage:

Kann ich ein struct von einer Funktion retournieren?

So wie ich das überall gefunden habe... ja...!
Allerdings wäre es besser Zeiger zu übergeben etc.
Aber ich möchte ja alle Arten austesten.
Also lege ich ein struct an (in Header und überall inkludiert):

struct {
int a;
int b;
}myStruct;


Dann Funktion in anderer Datei;

myStruct compare(void){
myStruct testStruct;

testStruct.a = 1;
testStruct.b = 2;

return testStruct;
}

In der Main:

myStruct result;

result = compare();

So jetzt kommt der Compiler der mir da sagt;
... incompatible types in assignment

Ich benutze AVR-Studio mit GCC höher 4.

Wo liegt da mein Fehler?

Bitte jetzt keine Antworten das ich das mit Pointer und Co machen soll 
oder so in der Richtung. Mir gehts darum das man angeblich die struct 
als Objekt direkt retournieren kann. Aber wie?

von Klaus W. (mfgkw)


Lesenswert?

Bitte korrekte, ordentlich formatierte und vollständige Quelltexte
liefern.
Wenn man die auch noch in [c]... einbettet, bekommt man vielleicht
auch eine vernünftige Antwort.

So wie hier ist das ein Wischiwaschi, das eh nicht stimmen kann;
auf etwas, was eine gewisse Ähnlichkeit mit deinem Programm hat
kann niemand vernünftig antworten.

Ansonsten: ja, man kann eine struct zurückgeben.

von Klaus W. (mfgkw)


Lesenswert?

nighteagle schrieb:
> struct {
> int a;
> int b;
> }myStruct;

Das vereinbart übrigens eine Variable myStruct.
Wenn du einen Typ definieren willst, fehlt ein typedef davor.

von nighteagle (Gast)


Lesenswert?

Moin,

Da ich die Zeilen direkt hier in das Textfenster getippt habe, um das 
Problem zu schildern habe ich keine Formattierung benötigt. Da auch du 
das retorunieren von struct bejahst würde mich interessieren wie man 
diesen Rückgabewert der Funktion vom Datentyp struct nun sinnig 
verarbeitet.
Ob da jetzt int oder uint16_t steht ist von der Sache her doch egal.

von nighteagle (Gast)


Lesenswert?

Richtig,
habe das in der Header auch so stehen:
1
typedef struct{
2
uint16_t x; 
3
uint16_t y;
4
} xy_pos;

von Klaus W. (mfgkw)


Lesenswert?

nighteagle schrieb:
> Da ich die Zeilen direkt hier in das Textfenster getippt habe, um das
> Problem zu schildern habe ich keine Formattierung benötigt.

1. Wenn du das nicht zum Schreiben brauchst, mag es dir reichen.
Aber eine halbwegs brauchbare Formatierung ist eine minimale
Höflichkeit gegenüber demjenigen, der das entziffern muß.

2. Daß du hier irgendwas reinklimperst, führt eben dazu, daß man
hier nicht dein Programm zu sehen bekommt, sondern etwas mehr oder
weniger ähnliches.
Was soll das? Lustiges Programmeraten?
Seit der Erfindung von copy&paste kann doch ziemlich jeder Depp
eine 1:1-Kopie liefern, bei der man das echte Programm sieht und
nicht über irgend etwas spekulieren muß, was vielleicht gar nicht
deinem Quelltext entspricht.

Also bitte...

von Klaus W. (mfgkw)


Lesenswert?

nighteagle schrieb:
> Richtig,
> habe das in der Header auch so stehen:
>
1
typedef struct{
2
> uint16_t x;
3
> uint16_t y;
4
> } xy_pos;

Und der Rest? Ist der auch etwa so oder etwas ähnlicher oder doch 
anders?
Oder was?

von Guru (Gast)


Lesenswert?

Tja.
Du hast vielleicht keine Einrückung benötigt.
Aber vielleicht fällt Dir ja ein anderer Weg ein uns zu motivieren uns 
mit Deinen Problemen auseinanderzusetzen. Falls nicht, bleibt Dir immer 
noch, den Ratschlägen bzw. Anforderungen zu folgen.

von nighteagle (Gast)


Lesenswert?

Das wäre die Funktion
1
xy_pos show_touch(void)
2
{
3
4
xy_pos lcd_pos;
5
6
lcd_pos.x = 1;
7
lcd_pos.y = 2;
8
9
return lcd_pos;
10
11
}
Dann in der Main:
1
xy_pos result;
2
3
result = show_touch();
Hier dann der Fehler. Komischerweise geht das:
1
result.x = show_touch();
Nur ist da eben immer der erste Wert drin logischerweise.
Hier müsste der Compiler doch auch meckern....?

von Klaus W. (mfgkw)


Lesenswert?

Glaube ich nicht; aber man sieht ja wieder nur die Hälfte.
Ist mir inzwischen aber auch ziemlich egal.

Wenn man nur Andeutungen vom Programm sieht, dann eine Andeutung der 
Antwort:
es sollte gehen.

Schönen Abend.

von ... ... ... (Gast)


Lesenswert?

nighteagle schrieb:
> Hier dann der Fehler.
Nur für die Statistik: Welcher Fehler denn?

Und ansonsten fehlt noch was an Quellcode, nämlich der vor
1
xy_pos result;
2
result = show_touch();

Ansonsten: Beitrag "Re: Wieder ein mal struct"

von nighteagle (Gast)


Lesenswert?

Moin,

wenn du überfordert bist antworte doch bitte nicht auf meine Fragen. 
Deine unnötigen Zurechtweisungen bringen dir nichts und mir auch nichts. 
Ich denke das ich in meinen fortgeschrittenen Alter sehr gut einschätzen 
kann was ich formatiere und was nicht. Da ich Hilfessuchende in anderen 
Foren auch unterstütze ist mir die Handlungsweise bekannt. Und einfache 
Fragen mit überflüssigen Randinformationen zu füllen ist eben nicht 
sinnig. Es dauert schon ein paar Minuten ordentlich Copy&Paste zu 
verwenden. Ausserdem interessiert der Code im gesamten nicht. Es geht 
nur um die prinzipielle Vorgehensweise bei der Rückgabe von struct und 
nicht um die eingehende Fehleranlayse in meinem Code. Das möchte ich 
doch gerne selbst bereinigen.

von nighteagle (Gast)


Lesenswert?

Und So vertreibt man Hilfesuchende,

Schönen Abend.

von Thorsten (Gast)


Lesenswert?

Um dir das vielleicht mal an einem anderen Beispiel klar zu machen, 
worum es den anderen geht:
Wenn dein Auto nicht mehr anspringt, dann baust du ja auch nicht den 
Motor aus, bringst den zu einer Werkstatt und sagst, dass dein Auto 
nicht anspringt und du meinst es liege am Motor.

Es kommt einfach sehr oft vor, dass der Fehler nicht dort liegt wo man 
ihn vermutet. Daher solltest du einfach den kompletten Quellcode 
reinstellen.

von Guru (Gast)


Lesenswert?

>Und So vertreibt man Hilfesuchende,

Du tust Dir mit dieser Atitüde keinen Gefallen.
Letzlich willst Du ja von uns Hilfe.
Dann ist es sinnvoll sich nach uns zu richten und
uns nicht Deinen Willen aufzwingen zu wollen.
Du siehst ja was dabei herauskommt.

Im übrigen ist Deine Äusserung, das Du selbst auch anderen Hilfe 
leistest hier nicht zielführend, denn man kann daraus nur folgern, dass 
Du eben nicht zu dieser Art von Problemen Hilfe leistest. Anderenfalls 
könntest Du die Kritik auch nachvollziehen.

Andersherum, wenn eine Hilfe unter Nicht-Beachtung von allein 
existierenden Formfehlern möglich wäre, wäre sie auch geleistet worden.
Es mag Dir vielleicht so scheinen, aber es ist nicht wahr, das dies 
allein deshalb nicht geschehen ist, weil Formfehler existieren. Vielmehr 
ist es so, das an Deinem Quellcode eine ganze Reihe von Mängeln zu sehen 
ist, die insgesamt eine Beurteilung der Situation entweder erschweren 
oder unmöglich machen.

Überleg Dir das doch bitte nochmal.

Falls Du, aus welchen Gründen auch immer, Deinen kompletten Quellcode 
nicht posten willst, ist auch das aktzeptabel. In den entsprechenden 
Netiquette-Artikeln im Netz wirst Du auch dazu eine Lösung finden.
SIe besteht darin ein Minimal-Beispiel zu kontruieren, das den selben 
Fehler aufweist aber in sich geschlossen ist und sich (abgesehen von der 
Fehlermeldung, um die es hier geht) kompilieren lässt.

von nighteagle (Gast)


Lesenswert?

Moin,

also der Analogie kann ich nicht folgen. Mein Auto ist kaputt, die Lampe 
ist defekt. Bringst du dann das Auto in die Werkstatt? Ich würde die 
Lampe dem Händler zeigen und eine als Ersatz bekommen. Dies beinhaltet 
das ich direkt auf die Lampe schliessen kann, da ich das 
Auschlussverfahren angewendet habe.
Meine Funktionen laufen ohne struct retournierung einwandfrei.

von Klaus W. (mfgkw)


Lesenswert?

ok, dann wende ich mal das Auschlußverfahren an:

Nachdem du hier deine wohl deine exakten Quelltexte gezeigt hast und
nichts unterschlagen hast, daran aber soweit nichts auszusetzen ist,
geht das Zurückgeben von structs offenbar doch nicht in C.

So einfach ist die Welt!

von Bernhard S. (berns)


Lesenswert?

@nighteagle: Hast du C gelernt, oder bringst du dir das selber bei? Ich 
vermute mal letzteres. Eine gute Einführung gibt

http://www.asc.tuwien.ac.at/eprog/download/schmaranz.pdf

Jetzt zu deinem Problem (ich hab das mal frei gecoded ohne zu testen, 
d.h. typos u.ä. sind durchaus möglich):
1
struct xy_pos {
2
  uint16_t x;
3
  uint16_t y;
4
};

Definiert eine struct mit dem Namen "struct xy_pos".
1
struct xy_pos show_touch() {
2
  //deklaration einer Variable touch vom Typ struct xy_pos
3
  struct xy_pos touch; 
4
5
  touch.x = 0;
6
  touch.y = 0;
7
8
  return touch;
9
}
10
11
void main() {
12
  struct xy_pos touch;
13
14
  touch = show_touch();
15
  //touch sollte die werte enthalten
16
}

Ich würde dir aber dringend empfehlen, dich in C einzulesen (z.b. mit 
obigem pdf). Übergabe von Strukturen by-value ist problematisch und es 
gibt schöneres z.B.:
1
void show_touch(struct xy_pos *touch) {
2
  touch->x = 0;
3
  touch->y = 0;
4
}
5
6
void main() {
7
  struct xy_pos touch;
8
9
  show_touch(&touch);
10
  //touch sollte die werte enthalten
11
}

von Guru (Gast)


Lesenswert?

>Mein Auto ist kaputt, die Lampe
>ist defekt. Bringst du dann das Auto in die Werkstatt?
Entschuldige bitte, aber Dein Beispiel ist sinngemäß nicht das selbe wie 
das obige.

Das obige Beispiel war: Der Wagen springt nicht an.
Dein Beispiel ist: Das Auto, im Detail die Lampe ist defekt.
Das ist nicht das selbe.
In Deinem Beispiel ist schon eine defekte Einzelkomponente bekannt. Im 
obigen aber nicht.

Auch wird in Deinem Beispiel, entgegen Deiner, sagen wir mal "Annahme" 
nicht das Ausschlussverfahren verwendet, da Du mitnichten aus einer 
Reihe von negativen Aussagen auf die einzig verbleibende aber nicht 
verifizierbare positive Aussage kommst.

Ehrlich gesagt habe ich jetzt auch langsam die Nase voll und ich halte 
mich hier raus zumal Du ja auf meine Beiträge nicht eingehst.

von Bernhard S. (berns)


Lesenswert?

@voriger post von mir: Rückgabe von structs kann funktionieren, muss 
aber nicht - hängt vom compiler ab. Wenn es nicht funktioniert, gibts 
Variante 2, die muss immer gehen.

von Klaus W. (mfgkw)


Lesenswert?

Bernhard S. schrieb:
> Rückgabe von structs kann funktionieren, muss
> aber nicht - hängt vom compiler ab.

Nein.
Alle Compiler können das.

von Bernhard S. (berns)


Lesenswert?

Klaus Wachtler schrieb:
> Nein.
> Alle Compiler können das.

Ich bilde mir ein gelesen zu haben, dass es nicht gehen muss. Bin mir 
aber nicht sicher, ob ISO C das fordert und erinnere mich daran, gelesen 
zu haben, dass dem nicht so ist.

von nighteagle (Gast)


Lesenswert?

Danke Bernhard,
endlich einfache Antworten auf einfache Fragen.
Die zweite Variante kannte ich schon die geht auch, siehe mein Post 
Anfangs. Nur die erste nicht, die versuche ich seit ca. 3 Stunden mit 
allen möglichen Informationen. Ich habe schon so einige Tutorials wie 
Anfangs geschrieben gelesen. Ich glaube auch das mein installierter 
Compiler dies nicht kann.
Diese Aussage hättee ich im dritten Post erwartet und das Problem ist 
geklärt.

Zu der Auto - Geschichte... ist genau die selbe Argumentation.
Jetzt gebe ich es auf und mache die nächsten Beispiele weiter... Also 
ich progge ja in Java und C++ damals mal in c2... nun will ich mich mal 
in die AVR begeben :-)

von Guru (Gast)


Lesenswert?

>Ich bilde mir ein gelesen zu haben, dass es nicht gehen muss. Bin mir
>aber nicht sicher, ob ISO C das fordert und erinnere mich daran, gelesen
>zu haben, dass dem nicht so ist.

Tja. Das mag sein, aber wo hast Du das denn gelesen?

Hier ein Auszug aus der ISO die im Wikipedia Artikel verlinkt ist.

ISO/IEC 9899:TC3 Committee Draft — Septermber 7, 2007 WG14/N1256

6.5.16.1 Simple assignment

Constraints

...
the left operand has a qualified or unqualified version of a structure 
or union type
compatible with the type of the right;
...

von nighteagle (Gast)


Lesenswert?

Nicht klug-schnacken... ausprobieren :-). Nicht immer wird sich an 
Normen detailgenau gehalten. Deshalb gibts ja Normen, damit man sich 
daran orientiert. Wenn man nie etwas anders machen würde, gäbe es keine 
Entwicklung mehr.

von Bernhard S. (berns)


Lesenswert?

Guru schrieb:
> Tja. Das mag sein, aber wo hast Du das denn gelesen?

Ist schon ne Weile her - by value übergeb ich structs eigentlich nie...

nighteagle schrieb:
> Nicht immer wird sich an
> Normen detailgenau gehalten.

Ja, das stimmt - die "Limitations" sind aber üblicherweise in der 
Compilerdoku beschrieben. Es ist aber nicht ausgeschlossen, dass ich 
auch einen Fehler drinnen habe... wie gesagt... structs by-value...

von Guru (Gast)


Lesenswert?

Bei mir gehts jedenfalls mit gcc version 4.3.2 (WinAVR 20090313)

Naja. Was soll man dazu noch sagen.

von Guru (Gast)


Lesenswert?

>Was soll man dazu noch sagen.
Hm. Es fehlt der minimale Quellcode mit dem ichs probiert habe.
1
struct xy_pos {
2
  int x;
3
  int y;
4
};
5
6
7
struct xy_pos show_touch() {
8
  //deklaration einer Variable touch vom Typ struct xy_pos
9
  struct xy_pos touch; 
10
11
  touch.x = 0;
12
  touch.y = 0;
13
14
  return touch;
15
}
16
17
int main() {
18
  struct xy_pos touch;
19
20
  touch = show_touch();
21
  //touch sollte die werte enthalten
22
}

von nighteagle (Gast)


Lesenswert?

Auch aus diesen Gründen:
Beitrag "Codesize WinAVR 20060421 vs WinAVR-20090313"
habe ich den WinAVR 20060421 installiert. Dazu gibts viele andere 
Diskussionen im Netz, da der neue Compiler auf die 32 Bit Architektur 
hin optmiert ist.
Damit geht das zweite Beispiel von Bernhard auch.. eben getestet.
So und oh Wunder... mit dem WinAVR 20090313... das erste Beispiel und 
auch mein erster Versuch von vor vier Stunden...

von nighteagle (Gast)


Lesenswert?

@Guru

Und jetzt könnte ich wieder sagen:
Wo ist der Rest vom minimalen Quellcode? Wie soll man das verstehen??? 
usw.
Allerdings war ich in der Lage diese einfache Transkation in meinem 
Gehirn zu vollziehen.

von Guru (Gast)


Lesenswert?

Darf ich das so verstehen, das das erste Beispiel von Bernhard mit der 
struct-Zuweisung mit WinAVR 20060421 nicht geht? Ist das richtig?

von Guru (Gast)


Lesenswert?

>Und jetzt könnte ich wieder sagen:
>Wo ist der Rest vom minimalen Quellcode? Wie soll man das verstehen???
>usw.

Jetzt kann ich gerade nicht folgen. Willst Du damit sagen, das aus 
Deiner Sicht in diesem Code 
Beitrag "Re: Wieder ein mal struct" etwas fehlt?

von Bernhard S. (berns)


Lesenswert?

@nighteagle bitte beantworte doch folgende Frage noch! Das wäre wirklich 
gut zu wissen!

Guru schrieb:
> Darf ich das so verstehen, das das erste Beispiel von Bernhard mit der
> struct-Zuweisung mit WinAVR 20060421 nicht geht? Ist das richtig?

von nighteagle (Gast)


Lesenswert?

Moin,

@Guru,

Genau so ist es mit dem Struct by-value mit dem Win AVR 20060241.

@Bernhard
Deine konstruktive Kritik ist in Ordnung und damit stimme ich überein. 
Du hast auch erst über das Problem nachgedacht und dann gepostet, wie 
man erkennen kann.

@all !Bernhard
Da aber hier so viele Schlaumeier sind die das nicht wussten und statt 
es wirklich zu wissen lieber mal ewig über Formatierungen und andere 
unnötigen Dinge schrieben, also unfähig waren aus dem von mir 
abstrahierten Beispiel einen Sinn zu erkennen möchte ich noch bemerken:
"In vielen Beiträgen die ich hier recherchiert habe, sind immer wieder 
die selben Nörgler die auf jede Frage als Erstes mit eine Zurechtweisung 
antworten, das noch mit miesen bis gar keinem Ton. Dies sollte man mal 
unterbinden. Nicht jeder der hier eine Frage stellt möchte einen riesen 
Terz mit Unterdrückung und Prügelleien ausfechten. Dies stellt die 
Qualität des Forums dar, darüber sollten die Betroffenden mal 
nachdenken. Genau diese werden wohl hierauf antworten, frei dem Motto 
"Getroffende Hunde bellen!" Ein Forum lebt nicht von einer Hand 
Daueruser sondern von Allen. Wenn die Mentalität aber überwiegend 
negativ von den Dauerusern geprägt ist wird das Forum immer mehr die 
Themen und damit das Gesamtziel verlieren.

von Bernhard S. (berns)


Lesenswert?

@nighteagle: Ich verstehe die Kritik von den anderen Usern zum Teil. Ich 
finde aber, dass ein einmaliger Beitrag reicht und entweder ignoriert 
man danach den Thread oder schreibt einen konstruktiven Beitrag (ist 
genau gleich aufwändig).

Warum bin ich auch so ein i-tüpfel Reiter?
Ich sitze mind. 8h/Tag vorm Computer und Code/Designe/Dokumentiere. 
Meine Augen sind geschult darauf Probleme in ordentlich formatiertem 
Code sofort zu erkennen. Ich helfe anderen grundsätzlich gerne, will 
mich aber nicht mit deren Formatierung auseinandersetzen (möglicherweise 
Alterserscheinung? oder ich hab bereits zuviel gesehen?) d.h. erwarte 
ich wohlformatierten Code und ein vollständiges aber minimalisitisches 
Beispiel, dass das Problem dokumentiert.

Warum antworte ich trotzdem?
Wenn ich gerade gute Laune habe und/oder mich das Gehabe anderer ärgert 
bzw. mich die Frage selber interessiert...

von Guru (Gast)


Lesenswert?

Ich möchte hier noch einen Kritikpunkt anbringen, der mir wesentlich 
erscheint. Die wesentliche Information, wie sich nun herausstellt, war 
die über die Compilerversion. Das einzige was Du gepostet hattest, war:

>Ich benutze AVR-Studio mit GCC höher 4.

Die Information hätte wesentlich detaillierter sein müssen um die Chance 
auf eine direkte Information zu erhöhen.


Ich meine, dass Du die Absichten hier völlig falsch einschätzt. Ich will 
das aber hier nicht im einzelnen nochmal vorholen, denn ehrlich gesagt, 
habe ich den Eindruck, dass Du vernünftigen Argumenten gegenüber nicht 
offen bist.
Ich meine zu erkennen, dass Du von uns erwartest, auf eine ganz 
bestimmte und zwar von Dir bestimmte Weise, zu reagieren und bei 
Abweichungen davon irrational und, was es so unangenehm macht, auch 
fordernd und sogar (mild aber dennoch erkennbar) beleidigend reagierst.

Insgesamt empfinde ich eine Abneigung gegen Deine Verhalten.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

nighteagle schrieb:
> möchte ich noch bemerken:
> "In vielen Beiträgen die ich hier recherchiert habe, sind immer wieder
> die selben Nörgler die auf jede Frage als Erstes mit eine Zurechtweisung
> antworten, das noch mit miesen bis gar keinem Ton.

Klaus Wachtler gehört in diesem Forum zu den hilfsbereiten Urgesteinen, 
die mit ziemlicher Geduld und vor allem fundiertem Fachwissen antworten. 
An Engelsgeduld wird er nur noch von meinem Moderatorenkollegen Karl 
Heinz überboten.

Wenn Klaus in dem Tonfall auf Deine "Anfrage" reagiert, dann hat das 
einen Grund. Du hast in äußerst schlampiger Weise fehlerhaft abgetippten 
Pseudocode hingerotzt, und erwartest, daß hilfsbereite den sich 
zurechtinterpretieren, um zu erahnen, was Du eigentlich wohl für ein 
Problem haben magst.

> Dies sollte man mal unterbinden. Nicht jeder der hier eine Frage stellt möchte
> einen riesen Terz mit Unterdrückung und Prügelleien ausfechten.

Das geschieht auch nicht jedem, der hier eine Frage stellt. Sondern nur 
Leuten, die nicht in der Lage sind, vernünftige Fragen zu stellen, und 
auch auf Nachfragen nicht nachbessern.

Die erste Antwort von Klaus

Klaus Wachtler schrieb:
> Bitte korrekte, ordentlich formatierte und vollständige Quelltexte
> liefern.
> Wenn man die auch noch in [c]... einbettet, bekommt man vielleicht
> auch eine vernünftige Antwort.

war ein ausreichend deutlicher und noch nicht sehr unfreundlicher 
Hinweis auf das, was Deiner Anfrage fehlte. Da war kein vollständiger 
Quelltext, er war unleserlich formatiert und (das ist der 
unwesentlichste Punkt) nicht als C-Code gekennzeichnet (das hätte das 
Syntax-Highlighting ermöglicht).

Der Sinn von vollständigem Quelltext und ordentlicher Formatierung ist 
der, daß der Hilfsbereite in die Lage versetzt wird, Dein Problem 
nachzuvollziehen.

Du aber hast Dich hartnäckig geweigert, diese hier *üblichen 
Umgangsformen* zu respektieren. Du erwartest eine präzise Antwort, 
beschreibst aber das Problem äußerst ungenau. Da Dich hier niemand 
kennt, kann auch nicht vermutet werden, ob Dein Problem ein reines 
Syntaxproblem ist, ob ein grundlegendes Verständnisproblem vorliegt, 
oder ob Du einen obskuren Fehler im Compiler gefunden hast (so 
unwahrscheinlich das auch sein mag).
Niemand hier weiß, was Du über die Verwendung von Strukturen weißt, und 
daher ist es exorbitant wichtig, daß Du ganz genau deinen Quelltext 
postest, und nicht nur eine vage und fehlerhaft abgetippte 
Zusammenfassung.

> Dies stellt die Qualität des Forums dar, darüber sollten die Betroffenden mal
> nachdenken.

Eben. Die Qualität des Forums besteht unter anderem darin, daß hier 
Leute, die sich wirklich damit auskennen, anhand von korrekt geposteten 
Sourcecode Fehler in Programmierversuchen anderer Leute erkennen können 
und in der Regel recht schnell hilfreiche Hinweise geben.

Durch Verhalten, wie Du es an den Tag legst, demotivierst Du die Leute, 
die sich hier hilfsbereit engagieren. Und hier sind Leute unterwegs, die 
über eine über alle Zweifel erhabene fachliche Qualifikation verfügen; 
Moderatorenkollege Jörg hat beispielsweise aktiv an den Libraries von 
avrgcc mitgearbeitet.

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.