Hi Leute,
so, inzwischen habe ich Listing 8.14 und auch das Problem mit der Unicode-Einstellung einigermassen verstanden. Was
mir aber noch nicht in den Kopf will
, ist die bestimmte Verwendung von Zeigern in dem Listing.
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
//C++ f. Spieleprogrammierer
//Test
//
#include <iostream>
using namespace std;
void TextAusgabe (const char *); //Prototyp
int main ()
{
TextAusgabe ("Hallo Welt");
cout << endl;
return 0;
}
//TextAusgabe
void TextAusgabe (const char *Text)
{
cout << Text << endl;
}//TextAusgabe
|
1. Frage
Hier habe ich diese Zeigerverwendung für mich in eine einfache Funktion verpackt. Man kann also anscheinend einer Funktion im Prototyp sowie in der Definition einen Char-Parameter als Zeiger übergeben, und im Funktionsaufruf dann einfach einen Text als Parameter weiter geben, anstatt einer Adresse
. Mit z.B. int funktioniert das nicht...ist das so eine spezielle Funktion von C++, die im Buch bis anhin einfach noch nicht weiter erläutert wurde, oder übersehe ich da einen logischen Zusammenhang?
2.Frage
Im Prototyp muss ich ja eigentlich nur die Datentypen als Parameter angeben. Will ich der Funktion aber einen Zeiger übergeben, muss noch der Indirektionsdingsbums * dazu geschrieben werden. Ist also z.B. char * ein eigener Datentyp, welcher sich von char unterscheidet, oder ist char der Datentyp, und bei Zeigern muss halt eben doch auch im Prototyp noch die weitere Angabe in Form des * gemacht werden...ich hoffe, ihr versteht meine Frage