- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 24

Thema: explizite Typumwandlung

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Ich hab das jetzt mit dem VC (microsoft visual studio 2005) durchprobiert. Das sollte eigentlich schon auf GCC übertragbar sein.

    Vorweg:
    Code:
    int*  p = (char*)1000;           // geht garnicht, verständlich, ist ja auch ein widerspruch
    Klammervarianten:
    Code:
    int*    p  = (int*)1000;
    Code:
    
             (char*)p++;              // kennen wir schon, liefert p+4
             (int)p++;                   // ebenfalls
           p = (int*)(int)p++;      // ebenfalls
    
          ((char*)p)++;          // Mag er garnicht ==>    error C2105: '++' needs l-value
                                      
    



    Was geht ? (definitiv getestet)
    Code:
    int    tmp = (int)p;
       p = (int*)++temp;              
    
    Code:
    union { int* p;  int iP; } un;
          un.p = (int*)1000;
          un.iP++ ;     // (durch die union wird auch   int*p  mit-incrementiert


    und die grausliche Variante
    Code:
         p = (int*)((int)p + 1);



    Wie gesagt: getestet




    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    04.08.2011
    Ort
    Hannover
    Beiträge
    164
    Sooo grauslich finde ich es gar nicht: Das hier (klick) hatte ich schon die ganze Zeit im Hinterkopf

    viele Grüße
    Andreas
    #define true ('/'/'/')
    #define false ('-'-'-')

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests