Breymann. C++ Einführung und professionelle Programmierung
Breymann. C++ Einführung und professionelle Programmierung Breymann. C++ Einführung und professionelle Programmierung
6.7 Zeiger und Funktionen 6.7.1 Parameterübergabe mit Zeigern = Spezialfall der Übergabe per Wert • Änderung des Zeigers in der Funktion beeinflusst nicht den Aufrufer. • Das Objekt, auf das der Zeiger verweist, kann in der Funktion geändert werden. Beispiel: #include void upcase(char *); // Prototyp int main( ) { char str[] = "gross 123"; cout
void upcase(char* s) { // In der ASCII-Tabelle sind die Platznummern der // Kleinbuchstaben um ’a’-’A’ = 32 gegenüber den // Großbuchstaben verschoben. int Differenz = ’a’ - ’A’; // impl. Typumwandlung } while(*s) { if(*s >= ’a’ && *s
- Seite 205 und 206: 6. Intermezzo: Zeiger - Zeiger und
- Seite 207 und 208: . 99 . . 10123 . Adresse Name 10122
- Seite 209 und 210: int *ip2 = &i; bewirkt: ip ip2 ❩
- Seite 211 und 212: NULL-Zeiger Eigenschaften: • Ein
- Seite 213 und 214: . Index 17 35 112 -3 1000 . 0 1 2 3
- Seite 215 und 216: Zeiger und Arrays Zeiger und Arrays
- Seite 217 und 218: sizeof funktioniert jedoch nicht be
- Seite 219 und 220: 6.3 C-Zeichenketten C-Zeichenkette
- Seite 221 und 222: Vordefinierte Funktionen: Header #
- Seite 223 und 224: char-Arrays // Definition und Initi
- Seite 225 und 226: Beispiele: Schleifen mit Strings St
- Seite 227 und 228: Strings kopieren char* original = "
- Seite 229 und 230: 6.4 Dynamische Datenobjekte new: Er
- Seite 231 und 232: Dynamisch erzeugte Struktur Erzeugu
- Seite 233 und 234: 6.4.1 Freigeben dynamischer Objekte
- Seite 235 und 236: • Mit new erzeugte Objekte unterl
- Seite 237 und 238: 6.5 Mehrdimensionale C-Arrays 6.5.1
- Seite 239 und 240: Arrays als Funktionsparameter C-Arr
- Seite 241 und 242: void Tabellenausgabe2D(int (*T)[3],
- Seite 243 und 244: Funktion für statische zwei-dimens
- Seite 245 und 246: Aufgaben 6.1 Die Äquivalenz von *(
- Seite 247 und 248: 6.5.2 Dynamisch erzeugte mehrdimens
- Seite 249 und 250: Eine dreidimensionale Matrix ist ei
- Seite 251 und 252: Feld von Zeigern auf Zeilen anlegen
- Seite 253 und 254: 6.6 Binäre Ein-/Ausgabe = unformat
- Seite 255: Lesen einer Datei double.dat mit do
- Seite 259 und 260: 6.7.2 Gefahren bei der Rückgabe vo
- Seite 261 und 262: int main() { int a = 1700, b = 1000
- Seite 263 und 264: #include using namespace std; #incl
- Seite 265 und 266: 6.9 this-Zeiger • this ist ein Sc
- Seite 267 und 268: 7. Objektorientierung 2 - eine Stri
- Seite 269 und 270: const char& at(std::size_t position
- Seite 271 und 272: 7.1.1 friend-Funktionen Optionen f
- Seite 273 und 274: 3. friend-Funktion Falls es aus Lau
- Seite 275 und 276: • Die static-Funktion Anzahl() so
- Seite 277 und 278: Implementation der Klasse nummerier
- Seite 279 und 280: Der Kopierkonstruktor hat hier eine
- Seite 281 und 282: Der Destruktor vermerkt, dass es nu
- Seite 283 und 284: Anfang eines neuen Blocks { nummeri
- Seite 285 und 286: 7.2.1 Klassenspezifische Konstante
- Seite 287 und 288: template class simpleStack { publi
- Seite 289 und 290: • Der Datentyp T steht für einen
- Seite 291 und 292: cout
- Seite 293 und 294: 7.3.2 Stack mit statisch festgelegt
- Seite 295 und 296: Nur die Deklarationen in einem Anwe
- Seite 297 und 298: 8. Vererbung • Eigenschaften, die
- Seite 299 und 300: Die Unterklasse erbt von der Oberkl
- Seite 301 und 302: Jedes Objekt ObjA vom Typ A (=abgel
- Seite 303 und 304: Klasse GraphObj #ifndef graphobj_h
- Seite 305 und 306: Die Entfernung zwischen 2 GraphObj-
6.7 Zeiger <strong>und</strong> Funktionen<br />
6.7.1 Parameterübergabe mit Zeigern<br />
= Spezialfall der Übergabe per Wert<br />
• Änderung des Zeigers in der Funktion beeinflusst nicht den Aufrufer.<br />
• Das Objekt, auf das der Zeiger verweist, kann in der Funktion geändert<br />
werden.<br />
Beispiel:<br />
#include<br />
void upcase(char *);<br />
// Prototyp<br />
int main( ) {<br />
char str[] = "gross 123";<br />
cout