C++ Welche dieser Ausdrücke sind erlaubte Variablen?

KA3AXCTAH

Lt. Junior Grade
Registriert
Juli 2008
Beiträge
359
Ich habe eine Frage zu meiner Klausur. Und zwar, welche der folgenden Wörter sind in C/C++ erlaubte Variablen:
3dim, dim3, Dim3, DIM3, dim.3, dim_3,
do, do3

Bei dim3 und do gehe ich davon aus, dass es passt. Kämen sonst noch welche Möglichkeiten aus der Liste hinzu?
 
OK:

text
Text
TEXT
Text_und_Zahlen
Text12
_Text_12

​Nicht OK:

12_Text
12
Text!
Text und Zahlen
 
Allerdings wird von vielen Leuten alles was nicht mit einem Kleinbuchstaben beginnt als schlechter Stil angesehen. Rein sprachlich ist es jedoch zulässig.

Die Regeln findet man allerdings mit 10s Suchen auch selbst.
 
do ist ein reserviertes Schlüsselwort, also nicht als Variablenname erlaubt. do3 sollte allerdings kein Problem sein.
 
KA3AXCTAH schrieb:
Bei dim3 und do gehe ich davon aus, dass es passt.
"do" ist nicht erlaubt, weil es do while Schleifen gibt, somit ist do ein reserviertes Schlüsselwort wie auch for, if, else u.a.
 
Gnah schrieb:
Allerdings wird von vielen Leuten alles was nicht mit einem Kleinbuchstaben beginnt als schlechter Stil angesehen. Rein sprachlich ist es jedoch zulässig.

Die Regeln findet man allerdings mit 10s Suchen auch selbst.

​Einfach Programmierreferenzen von Microsoft ansehen, diese sind wenigstens aktuell.

​So wird beispielsweise auch "var" als schlechter Stil angesehen, obwohl das total falsch ist.
​Bei C# beispielsweise wird sogar selbst von Microsoft empfohlen "var" zu verwenden. (Microsoft hat C# erfunden, falls es jemand nicht weiß)

​Beispiel:

OK:

var currentPerformanceCounterCategory = new System.Diagnostics.PerformanceCounterCategory();

var vowels2 = new string[] { "a", "e", "i", "o", "u" };

var dividend = Convert.ToInt32(Console.ReadLine());

​Quelle:
https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/inside-a-program/coding-conventions (englisch)
https://docs.microsoft.com/de-de/dotnet/csharp/programming-guide/inside-a-program/coding-conventions (deutsch)
 
Zuletzt bearbeitet:
Naja, C# != C/C++.

Lässt sich doch eigentlich alles ganz leicht runterbrechen:
- erlaubte Zeichen sind Buchstaben, Zahlen und der Unterstrich "_"
- die Variable darf nicht mit einer Zahl beginnen
- die Variable darf nicht genauso wie ein Keyword heißen

Solange sich die Variable an diese Regeln hält ist sie zulässig. Ob sie dann noch den Konventionen für akzeptablen Stil entspricht ist ein anderes Kapitel.
 
Du hast dieses Kapitel geöffnet, deshalb habe ich etwas dazu geschrieben
​10 Sekunden Suchen hat da offensichtlich nicht geholfen, deshalb mein Beitrag mit Quellenangabe und Stilbeispiel.
Ansonsten könnte deine Aussage mit schlechtem Stil Anfänger verwirren.
 
Du hast etwas zu C# geschrieben und verlinkt, was hier erstmal uninteressant ist. "var" existiert in C/C++ nicht einmal. Wenn hier etwas Anfänger verwirren wird dann andere Sprachen mitreinzubringen.

Und die Aussage zum Stil ist insofern wichtig, dass sein Lehrer womöglich in der Fragestellung der Klausur unterscheiden könnte zwischen dem, was rein vom Syntax her erlaubt ist und dem, was von den Konventionen her korrekt ist. Deshalb bedarf dies der Erwähnung.
 
Leute es ist für ein Maschinenbaustudium, ich möchte kein Programmierer werden ;)

Also nach dem, was ich gelesen und verstanden habe, wären richtig/möglich:
dim3, Dim3, DIM3, dim_3 und do3

Korrigiert mich ansonsten, Danke!
 
KA3AXCTAH schrieb:
Also nach dem, was ich gelesen und verstanden habe, wären richtig/möglich:
dim3, Dim3, DIM3, dim_3 und do3
Ja, das sind valide Variablen-Namen.

Nebenbei: In der Praxis wird bei unerlaubten Namen der Compiler sofort mit der entsprechenden Meldung motzen.
 
Zurück
Oben