CHRIS_MALL Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 Prospathw na mathw c++ alla den mporw na katalavw praktika th leitourgia twn pointers. Mporei kapoios gnwsths pou den varietai na mou exhghsei? Efxaristw prokatavolika!
Pablo_Hasan Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 polu xondrika mporw na sou pw oti se pointers apo8hkeuontai dieu8hnseis sthn mnhmh enw se metablhtes timh... (kalutera na sumbouleuteis kapoio tutorial, einai sxetika megalo kai poluploko kefalaio gia na sto ekshghsei kapoios apo forum, kalutera an exeis kati pio suggekrimeno)
kickeras Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 kai gw tha sou proteina na pareis kana vivlio giati einai ontws megalo kefalaio. Kai mia simvouli. Pote mi xrisimopoieis pointers ektos an einai apolitws aparaitito
godlike Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 Oi pointers einai i pemtousia tis C/C++. Einai auto pou tin ksexorizei apo tis alles glosses. Auto pou deinei tin apoliti eleftheria ston programmatisti (Telos me tin eisagogi). Oi pointers einai tipoi pou gia timi exoun mia dieuthinsi sti mnimi. Einai 64bit (se 32bit compilers). I pio koini xrisi tous einai stis grammatoseires. Dil.: char* chv_string = "Hello"; O chv_string einai enas pointer pou deixnei i sto 'H', dil. sto proto gramma tis grammatoseiras "Hello". Auta pou egrapsa einai teleios epifaniaka alla an thes na geineis asos stin C/C++ einai anageo na matheis pointers. Diafono kahteta me tin apopsi tou kickeras. Mporei oi pointers na einai diskoloi kai na odigoun polles fores se antieksoda alla einai tromera xrisimoi. An matheis kala tin logiki tous tha mporeis na ftiakseis ta panta.
nodreams.ct Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 Oi pointers einai tipoi pou gia timi exoun mia dieuthinsi sti mnimi. Einai 64bit (se 32bit compilers). Οι pointers σε 32bit συστήματα είναι 32bit (όσο και το address bus).
bandito Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 Οι pointers σε 32bit συστήματα είναι 32bit (όσο και το address bus). Γιατί; Εννοώ , το μεγεθος του pointer το καθορίζει το πλάτος του address bus η το πλάτος του databus?
Sta Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 Εξαρτάται από την υλοποίηση του μεταγλωττιστή το μέγεθος του pointer.
alkisg Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 Ρε παιδιά ο pointer δείχνει μια διεύθυνση στην RAM. Όσο address bus έχει ο επεξεργαστής τόσος θα είναι και ο pointer. Δεν εξαρτάται καθόλου από τον μεταγλωττιστή παρά μόνο από τον επεξεργαστή που θα τρέξει το εκτελέσιμο. Για IA32 (κλασσικά PC) sizeof(pointer) = 32 bit Για IA64 => 64 bit (υπάρχουν και μερικά ναι μεν αλλά εδώ, αλλά δεν είναι επί του παρόντος - π.χ. dos tiny memory model = 16 bit pointers κτλ). Υ.Γ. το data bus δεν παίζει ρόλο, π.χ. στον 8088 οι pointers έχουν το ίδιο μέγεθος με τον 8086.
bandito Δημοσ. 4 Ιουλίου 2005 Δημοσ. 4 Ιουλίου 2005 Ρε παιδιά ο pointer δείχνει μια διεύθυνση στην RAM. Όσο address bus έχει ο επεξεργαστής τόσος θα είναι και ο pointer. Δεν εξαρτάται καθόλου από τον μεταγλωττιστή παρά μόνο από τον επεξεργαστή που θα τρέξει το εκτελέσιμο. Για IA32 (κλασσικά PC) sizeof(pointer) = 32 bit Για IA64 => 64 bit (υπάρχουν και μερικά ναι μεν αλλά εδώ' date=' αλλά δεν είναι επί του παρόντος - π.χ. dos tiny memory model = 16 bit pointers κτλ). Υ.Γ. το data bus δεν παίζει ρόλο, π.χ. στον 8088 οι pointers έχουν το ίδιο μέγεθος με τον 8086.[/quote'] Χμμμ. Σε κλειστες αρχιτεκτονικές δεν παιζει ρόλο. Αλλα γενικά μπορεις να έχεις data banks και να τις ελεγχεις με μικρότερο address bus. Εξαρτάται για τι μιλάμε. Μπορει να εχεις 32 bit databus, 16 bit address bus και να εχεις μια χαρα 32 bit διευθυνσεις.
AoD Δημοσ. 5 Ιουλίου 2005 Δημοσ. 5 Ιουλίου 2005 mpes edo:http://cslibrary.stanford.edu/ και δές αυτά που λέει για τα pointers(για εμβάθυνση είναι οτι πρέπει, τα λέει ωραία).
kickeras Δημοσ. 5 Ιουλίου 2005 Δημοσ. 5 Ιουλίου 2005 Diafono kahteta me tin apopsi tou kickeras[/b']. Mporei oi pointers na einai diskoloi kai na odigoun polles fores se antieksoda alla einai tromera xrisimoi. An matheis kala tin logiki tous tha mporeis na ftiakseis ta panta. safestata....den eipa na min tous xrisimopoiisei....apla epeidi i xrisi tous proipothetei tin pliri katanoisi tous, einai protimotero na xrisimopoiountai otan xreiazontai kai oxi askopa. I alogisti xrisi tous odigei se....@*%$%$$@$@. Vevaiws kai einai xrisimoi!!!! na sou dwsw kai egw kana dio links mpas kai se voithisoun: http://www.cplusplus.com/doc/tutorial/tut3-3.html http://www.codersource.net/c++_pointers.html
alkisg Δημοσ. 5 Ιουλίου 2005 Δημοσ. 5 Ιουλίου 2005 Χμμμ. Σε κλειστες αρχιτεκτονικές δεν παιζει ρόλο. Αλλα γενικά μπορεις να έχεις data banks και να τις ελεγχεις με μικρότερο address bus. Εξαρτάται για τι μιλάμε. Μπορει να εχεις 32 bit databus' date=' 16 bit address bus και να εχεις μια χαρα 32 bit διευθυνσεις.[/quote']Για του λόγου το αληθές, μπορείς να δώσεις παράδειγμα μίας συγκεκριμένης αρχιτεκτονικής όπου το address bus είναι διαφορετικό από το data bus, και ο pointer έχει το μέγεθος του data bus? Υ.Γ. ας αφήσουμε απ' έξω απ' την συζήτηση το να έχουμε segments και offsets και να προσπελαύνουμε την RAM με 16*(segment register) + offset όπως γίνεται σε real x86 mode (με 20 bit address bus), γιατί όπως προανέφερα τότε είναι διφορούμενη η έννοια του pointer (δηλαδή αν pointer είναι ο ds:ax ή σκέτος ο ax ή το 16*ds+ax) οπότε πάμε σε φιλολογικές και όχι τεχνικές συζητήσεις...
godlike Δημοσ. 5 Ιουλίου 2005 Δημοσ. 5 Ιουλίου 2005 Se polous 32bit compilers o pointer einai 32bit oso o address register. Alla an den kano lahtos kapoioi compilers exoune 64bit pointers gia simvatotita me 64bit arxitektonikes.
GrMikeD Δημοσ. 5 Ιουλίου 2005 Δημοσ. 5 Ιουλίου 2005 οπότε πάμε σε φιλολογικές και όχι τεχνικές συζητήσεις... oriste enas Pointer
alkisg Δημοσ. 5 Ιουλίου 2005 Δημοσ. 5 Ιουλίου 2005 oriste enas PointerΚάτσε βρε, δεν υποτίθεται ότι θα έπρεπε να έχει το ποδαράκι σηκωμένο; Alla an den kano lahtos kapoioi compilers exoune 64bit pointers gia simvatotita me 64bit arxitektonikes.Σ' αυτό περιμένω παράδειγμα, γιατί εμένα μου ακούγεται extreme να μπορώ να δηλώσω έναν pointer που να δείχνει έξω από το address space του Η/Υ... Ο pointer απ' όσο ξέρω εξαρτάται πάντα απ' το μηχάνημα, ο int βέβαια μπορεί να ορίζεται ανάλογα με τον compiler...
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.