Gast
#179177
Hallo! Da ich anscheinend zu blöd (?) zum suchen bin, frage ich einfach mal ganz dumm.. Wie lang dürfen die Namen von Variablen beim avr-gcc sein? Gruß.. Jochen
|
Anzeige
|
Länge von Variablennamen
Gast
#179177
Hallo! Da ich anscheinend zu blöd (?) zum suchen bin, frage ich einfach mal ganz dumm.. Wie lang dürfen die Namen von Variablen beim avr-gcc sein? Gruß.. Jochen
Gast
#179178
Länger als du deine Variablen überhaupt je benamsen möchtest.
Gast
#179179
255 Zeichen ist AFAIK die Grenze, die im C-Standard genannt wird. Ein Compiler darf natürlich auch längere Variablennamen zulassen, nur ists dann nicht mehr kompatibel zu ANSI-C.
Gast
#179180
Was ANSI-C sagt, weiß ich gerade nicht. Der ISO-Standard schreibt folgende mindestens verstandenen Längen von Bezeichnern vor: - 63 significant initial characters in an internal identifier or a macro name - 31 significant initial characters in an external identifier Das sind Mindestforderungen, d. h. mehr ist natürlich (aus Compilersicht) standardkonform, ein portables Programm kann sich nur nicht darauf verlassen, dass mehr als die genannten Zeichen auf jedem beliebigen Compiler als signifikant angesehen werden. Der Standard besagt aber ausdrücklich, dass bei der Implementierung auf feste Beschränkungen verzichtet werden soll, und GCC hält sich daran, d. h. meines Wissens gibt es keine Beschränkung in der Länge mit Ausnahme der Größe des Hauptspeichers.
Gast
#179181
Hello again! Ok, jetzt bin ich beruhigt. Ich verwende nämlich der Lesbarkeit halber gerne aussagekräftige Namen. Und die können auch mal länger als 16 Zeichen werden. Ich hatte irgendwas im Hinterkopf, daß Variablennamen nach 8 oder 16 Zeichen abgeschnitten werden. Ich wußte nur nicht mehr, ob das damals mit Basic, mit Pascal oder bei C war :-) Danke für die Antworten.. Jochen
Gast
#179182
Hi Es gibt beim Compiler bzw. Debugger eines großen US-amerikanischen Softwarekonzerns das Problem das dieser keine Debugsymble mit mehr als 255 Zeichen erzeugen kann. Bei C ist das nicht weiter schlimm da wohl niemand so lange Bezeichner verwendet. Bei C++ und vor allem im Zusammenhang mit Templates erreicht man diese Grenze leider zu schnell. Dann ist kein Debuggen der betreffenden Klassen mehr möglich :-( Matthias
Gast
#179183
Da fast* alle Softwarekonzerne, die groß sind und C-Compiler herstellen, in den USA beheimatet sind, frag' ich mich doch, welchen Du meinen magst ... *) mir fällt so auff'n Plauz keiner ein, der's nicht ist.
Gast
#179184
Hi M$ Matthias
Gast
#179185
Vielleicht haben sie auch einfach nur das Problem, dass in deren altertümlichen Objektformat in der Debug-Info keine längeren Symbolnamen untergebracht werden können?
Gast
#179186
Hi für mich als Programmierer ist das zweitrangig wo denn jetzt das Problem genau liegt. Es ist einfach nur extrem ärgerlich. Matthias Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|