Απεικονιση μνημης των μεταβλητων

Συζητήσεις για την γλώσσα C και C++

Συντονιστές: Super-Moderators, WebDev Moderators

Απάντηση
Άβαταρ μέλους
loxy
Δημοσιεύσεις: 208
Εγγραφή: 17 Ιούλ 2007 01:18

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από loxy » 12 Αύγ 2007 20:53

Ας ξεκινησουμε ενα νεο θεματακι...
Η ερωτηση ειναι πως μπορω να βρω τις διευθυνσεις της μνημης
που καταλαμβανουν οι μεταβλητες κατα την εκτελεση ενος
προγραμματος C.
Καθε βοηθεια πολυτιμη..

gkantzel
Δημοσιεύσεις: 6
Εγγραφή: 25 Ιούλ 2007 12:18

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από gkantzel » 20 Αύγ 2007 13:50

Φίλε loxy. Για να δεις τη διεύθυνση μνήμης μιας μεταβλητής χρησιμοποιείς τον τελεστή '&'.
π.χ.

Κώδικας: Επιλογή όλων

#include <stdio.h>

int main&#40;&#41;
&#123;
    int x = 5;
    printf&#40;"x = %d \n" , x &#41;;    // εμφάνιση της τιμής του x
    printf&#40;"&x = %d" , &x&#41;;     //  εμφάνιση της διεύθυνσης του x
    
getchar&#40;&#41;;
return 0;
&#125; 

Άβαταρ μέλους
loxy
Δημοσιεύσεις: 208
Εγγραφή: 17 Ιούλ 2007 01:18

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από loxy » 20 Αύγ 2007 21:18

Thanx για την απαντηση αλλα δεν εννοουσα ακριβως αυτο...
Με ποια λογικη καταλαμβανουν τις συγκεκριμενες θεσεις μνημης
οι μεταβλητες?
Ενταξει ξερω οτι αλλο μεγεθος εχει μια float και αλλο μια integer
αλλα με ποια λογικη αποθηκευεται μια μεταβλητη
στη θεση 1245060 και οχι στην 1245064...
Ελπιζω τωρα να το αποσαφηνισα...

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από soteres2002 » 20 Αύγ 2007 23:30

gkantzel:
kanonika prepei na mpei sto printf morfopoiitis %p kai oxi %d gia na deis tin diefthinsi tis metablitis sti mnimi.

loxy:
to pos diaxeirizetai i C i opoiadipote alli glossa ti mnimi (px dinamiki desmeusi, pointers ktl) borei na diaferei. To pos diaxeirizetai i mnimi meso tis C, i genikos, einai ena kalo thema alla ligo megaloutsiko na kaliftei me mia apli apantisi. Gia arxi, se parapebo edo: http://www.cs.um.edu.mt/~cstaff/courses ... 0/c8a.html . An thes pio proxorimena pragmata, opos px heaps kai tetoia, boreis episis na psakseis sto google i na breis kapoies basikes plirofories se eisagogika egxeiridia gia tin C. I basiki logiki einai oti oti kainourgio apothikebeis, pairnei mia diefthinsi px megaliteri apo kati p apothikeuses prin. Etsi kathe ti p apothikebeis, exei mia diefthinsi p to kanei na ksexorizei apo ta alla. Borei omos na apothikeuseis se mi sinexomenes theseis sti mnimi.

Άβαταρ μέλους
loxy
Δημοσιεύσεις: 208
Εγγραφή: 17 Ιούλ 2007 01:18

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από loxy » 21 Αύγ 2007 01:31

Eyxaristw soteres!
Perimena na einai ligo pio apla ta pragmata...
:reading: :reading: :reading:

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από soteres2002 » 21 Αύγ 2007 01:55

An to prosegiseis theoritika to zitima, ta pragmata einai poli eukola. Alla an to meletiseis praktika (dld na ftiakseis enan memory manager p exei to leitourgiko sou, i na meletiseis ta katotera stixeia mnimis dld apo apopsi hardware) tote einai ligo diskola. Fantazomai kai elpizo pos pote den tha sou xreiastei kati tetoio :wink:

Άβαταρ μέλους
loxy
Δημοσιεύσεις: 208
Εγγραφή: 17 Ιούλ 2007 01:18

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από loxy » 21 Αύγ 2007 02:01

Mpa theoritika to xreiazomai...
Foititis gar

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Απεικονιση μνημης των μεταβλητων

Δημοσίευση από soteres2002 » 21 Αύγ 2007 22:29

Pantos an thes na meletiseis psifiaka kiklomata mnimon, ena kalo biblio einai tou Mano "digital design". Einai episis poli kalo eisagogiko egxeiridio gia ta psifiaka kiklomata (kaliptei algebra boole kai sinexizei se pio proxorimena themata), kai exei 2 kefalaia gia ta stixeia mnimon. Episis exei kai ena CD p periexei enan eksomioti gia tin verilog HDL, dld boreis na "trexeis" kapoia kiklomata anti na ta ilopoieis se kit.

Απάντηση

Επιστροφή στο “C, C++”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες