JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.phpMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Zeiger, Konstanten und konstante Zeiger

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
HotAcid
Super JLI'ler


Alter: 43
Anmeldedatum: 04.08.2002
Beiträge: 372
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 29.03.2003, 16:21    Titel: Zeiger, Konstanten und konstante Zeiger Antworten mit Zitat

Moin!

bin mir nicht ganz sicher, ob ich das mit Zeigern und Konstanten ganz verstanden habe, hier mal ein paar Beispielzeilen (ja, die sind aus dem Stroustup):

Code:
 char s[] = "Gorm";

// 1. Variante
const char* pc = s;
pc[3] = 'g';              // Fehler
pc = p;

// 2. Variante
char *const cp = s;
cp[3] = 'a';
cp = p;                     // Fehler

// 3. Variante
const char *const cpc = s;
cpc[3] = 'a';                // Fehler
cpc = p;                     // Fehler


Wenn ich das richtig verstanden habe, gilt dann jeweils folgendes:

Variante 1) Ein veränderbarer Zeiger, der auf eine Konstante zeigt, aber der auch einer anderen Konstante zugewiesen werden darf

Variante 2) Hier ist der Zeiger selbst konstant, zeigt also immer auf dieselbe (veränderliche Variable)

Variante 3) ein konstanter Zeiger, der auf eine Konstante zeigt (nichts veränderlich)

dürfte doch so richtig sein, oder?

cu Felix
_________________
StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Christian Rousselle
Site Admin


Alter: 48
Anmeldedatum: 19.07.2002
Beiträge: 1630

Medaillen: Keine

BeitragVerfasst am: 29.03.2003, 16:42    Titel: Antworten mit Zitat

Im Prinzip ist das schon richtig. s ist jedoch keine Konstante. Nur dadurch, dass du den Zeiger const deklarierst, sagst du dem Compiler, dass s durch den Zeiger nicht verändert werden kann. s kann ja sehr wohl verändert werden.

Christian
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
HotAcid
Super JLI'ler


Alter: 43
Anmeldedatum: 04.08.2002
Beiträge: 372
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 29.03.2003, 16:46    Titel: Antworten mit Zitat

aha, vielen dank!
_________________
StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum