Ich brauche dringend hilfe!!! BITTE!!!
-
Guck mal hier, da ist ein ganzes Kapitel über Arrays in C. Dirket danach kommt ein Kapitel über Pointer, Arrays und Pointer findest du in Kapitel 15.7. Array und Zeiger
Code-Hacker
-
Vielen Dank!!!
mfg
Sandra
-
kingruedi schrieb:
...
const size_t A_SIZE=10;
short a[A_SIZE];Ähh, das geht wenn überhaupt in C doch erst ab C99? ich glaube kam das C99 heute schon geprüft wird...
-
sicher dass das nicht auch in C89 erlaubt ist? Ist ja eine Konstante.
-
kingruedi schrieb:
sicher dass das nicht auch in C89 erlaubt ist? Ist ja eine Konstante.
http://www.mitp.de/imperia/md/content/vmi/0732/3.pdf
Hm, hab bis gerade gedacht, dass const kein schlüsselwort von C89 ist...
Warum bekommt man dann in Unterricht ect. immer #define BLABLA 10 beigebracht??
const int BLABLA=10; wäre doch viel sinnvoller (na gut es müßte global sein)... *am_kopf_kratz*
-
const hat mit Konstanten nichts zu tun.
(Um noch ein bißchen rumzufaseln: const besagt, das der Programmierer den Wert einer Variable über diesen Namen nicht ändern kann. Natürlich hat das nichts mit der Veränderung des Wertes allgemein zu tun.)
-
Daniel E. schrieb:
const hat mit Konstanten nichts zu tun.
(Um noch ein bißchen rumzufaseln: const besagt, das der Programmierer den Wert einer Variable über diesen Namen nicht ändern kann. Natürlich hat das nichts mit der Veränderung des Wertes allgemein zu tun.)du meinst:
const int a=100; int *b; b=&a; (*b)++; printf("%d",a); // gibt 101 aus??
geht?
(hab gerade keinen Compiler zum probieren da...)
-
Der GNU Compiler und ich denk mal ziemlich jeder Compiler bei dem optimieren eingeschaltet ist macht bei
const size_t A_SIZE=10;
ziemlich genau dasselbe wie bei
#define A_SIZE 10
abgesehen von der zusätzlichen Typenkontrolle die ja auch ganz nett ist.Anders wirds wieder wenn man A_SIZE jetzt DOCH wieder verwendet indem man das const wegcastet, dann wird A_SIZE wieder als normale Variable gespeichert.
-
xroads42 schrieb:
du meinst:
const int a=100; int *b; b=&a; (*b)++; printf("%d",a); // gibt 101 aus??
geht?
Nein, die Implementierung kann in diesem Spezialfall a in einen nichtbeschreibbaren Teil des RAM legen. Was macht übrigens der //-Operator?
In C ändert sich die Bedeutung von const nicht, wenn man es vor einen Zeiger, einen Integer oder eine volatile-Variable schreibt.
-
Was macht übrigens der //-Operator?
seit C99 gibt es ja // für Kommentare :p
-
printf("%d",a); // gibt 101 aus??
lol ist ein String. Dafür brauchst du %s
-
lol = 101
-
ups...bitte löschen