Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Beliebiger Zeigertyp als Funktionsparameter?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
26.08.2006, 11:57 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja du dereferenzierst die pointer ja auch. mach mal das * bei sizeof weg dann kriegst du 2x 4 (und btw: getch und fflush(stdin) ist scheusslich. fflush(stdin) funktioniert übrigens nur unter windows - ist "undefined behaviour")
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
26.08.2006, 12:38 Uhr
2cHH



Hi,


Zitat von FloSoft:
naja du dereferenzierst die pointer ja auch. mach mal das * bei sizeof weg dann kriegst du 2x 4


sorry, irgendwie versteh ich nicht ganz.....


Zitat von 2cHH:
Zeiger selbst sind natürlich immer gleich gross, aber auch nach einem Cast zu (Void*) kann man sie immer noch dereferenzieren.


.....wie ich das mit diesem Template gedanklich verknüfen soll.


--


getch() ist nicht ANSI-C, getchar() aber, oder?

Hehe, wenn du wüsstest, was bei DevCpp dafür vorgesehen war....


Code:
system("PAUSE");


Imho kein gutes Vorbild.
--
greetz,
2cHH
_____________

Dieser Post wurde am 26.08.2006 um 12:43 Uhr von 2cHH editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
26.08.2006, 12:49 Uhr
FloSoft
Medialer Over-Flow
(Administrator)



C++:
int main(int argc, char **argv)
{
    char *pChar;
    int *pInt;

    pChar = (void*) pChar; // machen überhaupt nix
    pInt = (void*) pInt; // machen überhaupt nix

    printf("%d\n", sizeof(pChar)); // liefert 4 bzw 8
    printf("%d\n", sizeof(pInt));   // liefert 4 bzw 8

    getchar();
}


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
26.08.2006, 13:01 Uhr
2cHH



Ahh, das wusste ich auch noch nicht:


Code:
int n;
void check(void*);

int main(int argc, char **argv)
    {
    char *pChar;
    check(pChar);
    pChar = (void*) pChar;
    check(pChar);
    fflush(stdin);
    getchar();
    }



void check(void* pGen)
    {
    printf("ok\n");
    }




Ich hätte gedacht, dass der Zeiger vorher gecastet werden muss. Dem ist aber, wie du schon geschrieben hast, nicht so. Also sind Casts in der Art (Void*) scheinbar überflüssig, weil sie auch so als (Void*) durchgehen?

Interessant, interessant.....
--
greetz,
2cHH
_____________

Dieser Post wurde am 26.08.2006 um 13:02 Uhr von 2cHH editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: