[SOLVED]: pointer-to-object casting και ISO C++

Dimitris dlenis at lithos.culture.gr
Thu Mar 2 10:22:13 EET 2006


Giorgos Keramidas wrote:
> On 2006-03-02 01:33, Eustathios Kamperis <ekamperi at auth.gr> wrote:
> 
>>Καλημέρα και πάλι παιδιά :)
>>
>>Με τις συμβουλές σας, λίγο ψάξιμο και αρκετή τύχη κατάφερα να λύσω το
>>πρόβλημά μου.  Παραθέτω το code snippet, για λόγους καθαρά τυπικούς.
>>
>>    #include <iostream>
>>    using namespace std;

[code snip]

>>Για του λόγου το αληθές:
>>
>>    stathis at ubuntu:~/Projects/C++/pf_iso$ g++ main.cpp -Wall -W -pedantic
>>    stathis at ubuntu:~/Projects/C++/pf_iso$ ./a.out
>>    Function address: 0x80486a6
>>
>>Δεν μπαίνω σε επιπλέον τεχνικές λεπτομέρειες. Όποιος θέλει μπορεί να
>>ψάξει στο google για την reinterpret_cast.
> 
> 
> Επικίνδυνη την κόβω αυτή.  Το παρακάτω παίζει στα μηχανήματα που το
> δοκίμασα[1], αλλά είναι όλα UNIX με unified memory address space.
> 
> [1] FreeBSD 7.0 (i386, amd64), Solaris 10 (i386, amd64, sparcv9).
> 
> Δεν έχω MS-DOS πλέον πουθενά, και δεν ξέρω αν έχει νόημα να το ψάξει
> κάποιος, αλλά είμαι περίεργος αν το παρακάτω (λίγο διαφορετικό)
> πρόγραμμα παίζει το ίδιο παντού.
> 
[code snip]
> 
> Ενδιαφέρον πάντως.  Εγώ, τουλάχιστον, ευχαριστώ που έστειλες και την
> απάντηση μόλις τη βρήκες.  Μόλις βρω κάποιο DOS μηχάνημα με C++ που να
> μπορεί να το μεταγλωττίσει αυτό, θα το δοκιμάσω αμέσως :)))

OK, το έκανα εγώ για σένα (τον κώδικά σου τον είπα keramid.cpp):

F:\tmp>gcc -v
Reading specs from
C:/Programfiles/MinGW/bin/../lib/gcc-lib/mingw32/3.2/specs
Configured with: ../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as
--host=mingw32 --target=mingw32 --prefix=/
mingw --enable-threads --disable-nls --enable-languages=f77,c++,objc,ada
--disable-win32-registry --disable-shared
Thread model: win32
gcc version 3.2 (mingw special 20020817-1)


F:\tmp>g++ keramid.cpp -Wall -W -pedantic -o aaa

F:\tmp>aaa
Function address: 0x4012d2
size of `const void *'     = 4
size of `size_t'           = 4
size of `function pointer' = 4

Δίνει το ίδιο address δηλαδή με τον κώδισκα του ekamperi at auth.gr...

Δημήτρης

> - Γιώργος
> 



More information about the Linux-greek-users mailing list